ID:               44196
 Updated by:       [EMAIL PROTECTED]
 Reported By:      tyler at sleekcode dot net
-Status:           Open
+Status:           Bogus
 Bug Type:         PostgreSQL related
 Operating System: Windows
 PHP Version:      5.2.5
 New Comment:

Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php

Doing foo = NULL does not work in databases. To fetch based on NULL 
values of a column you need to do column IS NULL


Previous Comments:
------------------------------------------------------------------------

[2008-02-20 23:25:19] tyler at sleekcode dot net

Description:
------------
Passing NULL via pg_query_params does not work resulting in situations
where a possible NULL value must have a secondary branch of code to
adjust the query accordingly.

Reproduce code:
---------------
using postgres 8x create this test table:

CREATE TABLE test
(
  id     serial PRIMARY KEY,
  name   text,
  extra  text,
);
INSERT INTO test (name,extra) VALUES ('Testing 123,'Testing');
INSERT INTO test (name) VALUES ('My extra is null');

<?php
$db = pg_connect("your connection string");

// set postgresql to allow = NULL instead of requiring IS NULL
pg_query("set transform_null_equals to on");

// query for all records where extra = NULL (postgres converts to extra
IS NULL)
$res = pg_query_params("SELECT name FROM test WHERE
extra=$1",array(NULL));

// print result, should be 'My extra is null'
print pg_fetch_result($res,0);
?>

Expected result:
----------------
The code should return the first result that matches the query.

Actual result:
--------------
The query does not run correctly.


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=44196&edit=1

Reply via email to