The following bug has been logged online:
Bug reference: 3806
Logged by: Ted Wen
Email address: tedwen@nesc.ac.uk
PostgreSQL version: 8.3beta3
Operating system: Windows
Description: PreparedStatement.setString(String) throws exception
Details:
Code fragment:
String sql = "create table uuidtab(id uuid not null,num int,primary key
(id))";
Statement stmt = conn.createStatement();
stmt.executeUpdate(sql);
sql = "insert into uuidtab
values('8555b4c4-5b3d-41ab-9f0f-c71120a583b1',10)";
stmt.executeUpdate(sql);
sql = "select * from uuidtab where id=?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setString(1, "8555b4c4-5b3d-41ab-9f0f-c71120a583b1");
ResultSet rs = ps.executeQuery();
if (rs.next()) {
System.out.println(rs.getString(1));
}
The last executeQuery() produces the following error message:
org.postgresql.util.PSQLException: ERROR: operator does not exist: uuid =
character varying