Обсуждение: [INTERFACES] JDBC escape problem
I'm encountering a problem with the implementation of escapes using the 6.5 JDBC driver. If I attempt to insert a timestamp value using the following syntax, I get an error from the postgreSQL parser complaining about the '{' character: stmt.executeUpdate("insert into tstest values ( { ts '1999-07-07 00:00:00' } )"); However, the following statement works: stmt.executeUpdate("insert into tstest values ( '{ ts 1999-07-07 00:00:00 }' )"); Unfortunately, the former is the correct syntax where the second isn't. >From what I could determine tracing the code, there is no escape processing performed in the PostgreSQL jdbc driver, and the error is originating from the database backend. I thought it unusual that I didn't see reference to this problem in the mail archives (though I admit I only went back a few months). Is this a known problem? What are the consequences of fixing it in the back-end? Will it break other drivers that depend on this syntax? Any advise would be appreciated. Thanks in advance, rc
This is probably caused by the fact that currently we don't parse anything within the JDBC driver. I'll put it on my todo list for 6.6. -----Original Message----- From: Rolland Crunk [mailto:rc@aenet.net] Sent: 08 July 1999 08:57 To: pgsql-interfaces@hub.org Subject: [INTERFACES] JDBC escape problem I'm encountering a problem with the implementation of escapes using the 6.5 JDBC driver. If I attempt to insert a timestamp value using the following syntax, I get an error from the postgreSQL parser complaining about the '{' character: stmt.executeUpdate("insert into tstest values ( { ts '1999-07-07 00:00:00' } )"); However, the following statement works: stmt.executeUpdate("insert into tstest values ( '{ ts 1999-07-07 00:00:00 }' )"); Unfortunately, the former is the correct syntax where the second isn't. >From what I could determine tracing the code, there is no escape processing performed in the PostgreSQL jdbc driver, and the error is originating from the database backend. I thought it unusual that I didn't see reference to this problem in the mail archives (though I admit I only went back a few months). Is this a known problem? What are the consequences of fixing it in the back-end? Will it break other drivers that depend on this syntax? Any advise would be appreciated. Thanks in advance, rc
This is probably caused by the fact that currently we don't parse anything within the JDBC driver. I'll put it on my todo list for 6.6. -----Original Message----- From: Rolland Crunk [mailto:rc@aenet.net] Sent: 08 July 1999 08:57 To: pgsql-interfaces@hub.org Subject: [INTERFACES] JDBC escape problem I'm encountering a problem with the implementation of escapes using the 6.5 JDBC driver. If I attempt to insert a timestamp value using the following syntax, I get an error from the postgreSQL parser complaining about the '{' character: stmt.executeUpdate("insert into tstest values ( { ts '1999-07-07 00:00:00' } )"); However, the following statement works: stmt.executeUpdate("insert into tstest values ( '{ ts 1999-07-07 00:00:00 }' )"); Unfortunately, the former is the correct syntax where the second isn't. >From what I could determine tracing the code, there is no escape processing performed in the PostgreSQL jdbc driver, and the error is originating from the database backend. I thought it unusual that I didn't see reference to this problem in the mail archives (though I admit I only went back a few months). Is this a known problem? What are the consequences of fixing it in the back-end? Will it break other drivers that depend on this syntax? Any advise would be appreciated. Thanks in advance, rc
unsubscribe