JDBC Update question (quoted strings)

From: Gerry Gattis <GGattis(at)iTeamOne(dot)com>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: JDBC Update question (quoted strings)
Date: 2004-09-01 02:59:27
Message-ID: 1094007567.8130.34.camel@Kernighan.iTeamOne.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

I had to make an unexpected adjustment in a query string in order to
insert a record into a table. I was would like to know if anyone has a
remedy for this. Here is a short description.

String strInsert = "insert into myTable (lastName) values (?)";
PreparedStatement stm = conn.prepareCall(strInsert);
stm.setString(1, "Smith");
// OK so far
stm.execute();
//fails with an error message attribute Smith not found

If I use a Statement and manually construct the query string so it
contains the single quotes as follows:
String strInsert = "insert into myTable (lastName) values ('Smith')";
Statement stm = conn.getStatement();
stm.execute(strInsert);

It works like a charm.

It looks like there is a difference in the way the PostGres driver
handles Strings. I have been through several of the documents on the web
site, but have not seen this addressed in any of the configuration
articles.
The app I am working on needs to work with different RDBMS products. I'm
sure I am not the first person to want to do this. Is there a trick to
it with PostGres?

Best regards,
Gerry

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message David Wall 2004-09-01 03:15:02 Re: JDBC Update question (quoted strings)
Previous Message Noah Davis 2004-08-31 14:09:31 Re: expected trigger behavior in transactions