Annotation of embedaddon/php/ext/pgsql/tests/bug47199.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: Bug #47199 (pg_delete fails on NULL)
! 3: --SKIPIF--
! 4: <?php
! 5: require_once('skipif.inc');
! 6: ?>
! 7: --FILE--
! 8: <?php
! 9:
! 10: require_once('config.inc');
! 11:
! 12: $dbh = pg_connect($conn_str);
! 13: $tbl_name = 'test_47199';
! 14: @pg_query("DROP TABLE $tbl_name");
! 15: pg_query("CREATE TABLE $tbl_name (null_field INT, not_null_field INT NOT NULL)");
! 16:
! 17: pg_insert($dbh, $tbl_name, array('null_field' => null, 'not_null_field' => 1));
! 18: pg_insert($dbh, $tbl_name, array('null_field' => null, 'not_null_field' => 2));
! 19:
! 20: var_dump(pg_fetch_all(pg_query('SELECT * FROM '. $tbl_name)));
! 21:
! 22: $query = pg_delete($dbh, $tbl_name, array('null_field' => NULL,'not_null_field' => 2), PGSQL_DML_STRING|PGSQL_DML_EXEC);
! 23:
! 24: echo $query, "\n";
! 25:
! 26: $query = pg_update($dbh, $tbl_name, array('null_field' => NULL, 'not_null_field' => 0), array('not_null_field' => 1, 'null_field' => ''), PGSQL_DML_STRING|PGSQL_DML_EXEC);
! 27:
! 28: echo $query, "\n";
! 29:
! 30: var_dump(pg_fetch_all(pg_query('SELECT * FROM '. $tbl_name)));
! 31:
! 32: @pg_query("DROP TABLE $tbl_name");
! 33: pg_close($dbh);
! 34:
! 35: echo PHP_EOL."Done".PHP_EOL;
! 36:
! 37: ?>
! 38: --EXPECTF--
! 39: array(2) {
! 40: [0]=>
! 41: array(2) {
! 42: ["null_field"]=>
! 43: NULL
! 44: ["not_null_field"]=>
! 45: string(1) "1"
! 46: }
! 47: [1]=>
! 48: array(2) {
! 49: ["null_field"]=>
! 50: NULL
! 51: ["not_null_field"]=>
! 52: string(1) "2"
! 53: }
! 54: }
! 55: DELETE FROM test_47199 WHERE null_field IS NULL AND not_null_field=2;
! 56: UPDATE test_47199 SET null_field=NULL,not_null_field=0 WHERE not_null_field=1 AND null_field IS NULL;
! 57: array(1) {
! 58: [0]=>
! 59: array(2) {
! 60: ["null_field"]=>
! 61: NULL
! 62: ["not_null_field"]=>
! 63: string(1) "0"
! 64: }
! 65: }
! 66:
! 67: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>