2 messages in org.postgresql.pgsql-jdbcJDBC 7.4 to 8.1 regression problem
FromSent OnAttachments
Carsten FriedrichJul 13, 2006 7:01 pm 
Tom LaneJul 14, 2006 9:14 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:JDBC 7.4 to 8.1 regression problemActions...
From:Carsten Friedrich (cars@dtecht.com.au)
Date:Jul 13, 2006 7:01:05 pm
List:org.postgresql.pgsql-jdbc

I just tried to switch from Postgres 7.4 to 8.1. Works fine as far as the server is concerned, as long as I use the JDBC 7.4 driver in my program. If I use the JDBC driver postgresql-8.1-407.jdbc3.jar I have the following problem:

I use the following prepared statement:

[...] final static String SQL= "SELECT " + [...] " WHERE " + [...] + " AND service_date <= ?" + " and service_date > date ? - interval '365 days'; " [...]

This statement works fine with the 7.4 JDBC, but using

statement.setDate(5, someDate); // where someDate is a valid java.sql.Date

I get the following error message when executing the statement:

ERROR: syntax error at or near "$5"

The last "?" (before "- interval") is $5.

Playing around a bit (leaving out the " date " bit) I noticed that JDBC seems to substitute the "?" by "2005-05-02 +1000". However, I don't know if this is a good or bad thing.

Your help in this would be much appreciated.

Thanks, Carsten