--TEST-- Bug #47199 (pg_delete fails on NULL) --SKIPIF-- --FILE-- null, 'not_null_field' => 1)); pg_insert($dbh, $tbl_name, array('null_field' => null, 'not_null_field' => 2)); var_dump(pg_fetch_all(pg_query('SELECT * FROM '. $tbl_name))); $query = pg_delete($dbh, $tbl_name, array('null_field' => NULL,'not_null_field' => 2), PGSQL_DML_STRING|PGSQL_DML_EXEC); echo $query, "\n"; $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); echo $query, "\n"; var_dump(pg_fetch_all(pg_query('SELECT * FROM '. $tbl_name))); @pg_query("DROP TABLE $tbl_name"); pg_close($dbh); echo PHP_EOL."Done".PHP_EOL; ?> --EXPECTF-- array(2) { [0]=> array(2) { ["null_field"]=> NULL ["not_null_field"]=> string(1) "1" } [1]=> array(2) { ["null_field"]=> NULL ["not_null_field"]=> string(1) "2" } } DELETE FROM "test_47199" WHERE "null_field" IS NULL AND "not_null_field"=2; UPDATE "test_47199" SET "null_field"=NULL,"not_null_field"=0 WHERE "not_null_field"=1 AND "null_field" IS NULL; array(1) { [0]=> array(2) { ["null_field"]=> NULL ["not_null_field"]=> string(1) "0" } } Done