Re: select * from mytable where myfield=null;
От | Bruno Lamouret |
---|---|
Тема | Re: select * from mytable where myfield=null; |
Дата | |
Msg-id | 3CDFF4EA.7070201@westcast-systems.com обсуждение исходный текст |
Ответ на | select * from mytable where myfield=null; (blamouret <bruno.lamouret@westcast-systems.com>) |
Список | pgsql-jdbc |
Hi, I agree with you when you say that '= null' isn't ANSI Standard. But the trouble is that the jdbc driver does this error. A query such as "select * from mytable where date=?" becomes "select * from mytable where date=null" with the jdbc driver when we put a null value in the preparedStatement while it should become "select * from mytable where date is null". am I right ? Thanks Bruno Barry Lind wrote: > This isn't really a jdbc question and would probably better be > addressed to pgsql-general. The behavior you are now seeing is ANSI > Standard behavior. '= null' should always return false according to > the standard. In 7.2 this non-standard behavior was fixed. You will > see this behavior in all of the interfaces to postgres, not just jdbc. > > There is a parameter in the postgresql.conf file that will revert back > to the old buggy behavior (transform_null_equals = true). > > thanks, > --Barry > > > blamouret wrote: > >> Hi, >> I'm using Postgresql 7.2.1, with JBoss2.4.4. and jdk1.4 >> >> Here is my table : >> id | date | value >> -----+-------------------------+--------- >> 1 | 2002-05-10 10:00:00:+02 | 5 >> 2 | (null) | 10 >> ... >> >> With the jdbc driver, this query doesn't any result : >> Stmt = con.prepareStatement(select * from mytable where date=?) >> Stmt.setNull(1,java.sql.Types.TIMESTAMP); >> Stmt.executeQuery(); >> >> I think the jdbc driver transform the query on "select * from mytable >> where date=null" and not "select * from mytable where date is null". >> >> Il seems that select * from mytable where date=null was supported by >> postgres before 7.0 version, but not with the 7.2.1 >> >> How can i do ? >> thanks >> Bruno. >> >> >> >> >> >> ---------------------------(end of broadcast)--------------------------- >> TIP 4: Don't 'kill -9' the postmaster >> > >
В списке pgsql-jdbc по дате отправления: