On Tue, 19 Oct 1999, Herouth Maoz wrote:
> At 19:05 +0200 on 18/10/1999, Esteban Chiner Sanz wrote:
>
>
> > I'm trying to do this:
> >
> > if (counter != -1) /* No ha habido ning�n error */
> > {
> > PreparedStatement pstmt=null;
> > sql="insert into tar_historico values (?,?,?)";
> > razon="<br>Query: " + sql;
> > try {
> > pstmt = con.prepareStatement(sql);
> > pstmt.setString(1,Integer.toString(counter));
> > pstmt.setString(2,"1");
> > pstmt.setTimestamp(3,new Timestamp(new
> > java.util.Date().getTime()));
> > pstmt.executeUpdate(sql);
> > pstmt.close();
> > con.close();
> > }
> >
> > But I get this error message in the PostgreSQL log:
> >
> > query: insert into tar_historico values (?,?,?)
> > ERROR: parser: parse error at or near ","
>
> What are the (Postgres) datatypes of the fields?
>
> The best would be to know what the final format of the query became. For
> this you have to run the postmaster with -d2 or something, to create a
> debug-level log. It will show you the statements as they were passed to the
> backend.
>
> My personal suspicion is that your first two fields are numeric fields, not
> string fields.
My suspicion aswell. Most people forget that setString() wraps the string
in quotes when the query is sent to the backend.
Peter
-- Peter T Mount peter@retep.org.uk Main Homepage: http://www.retep.org.uk
PostgreSQL JDBC Faq: http://www.retep.org.uk/postgresJava PDF Generator: http://www.retep.org.uk/pdf