I have just upgraded to the 8.1-404 version of the JDBC driver from a
much older version. In the past I had been able load an interval into my
database by sending it as a string, as such:
String myInterval = "08:00"; // 8 hour interval
...
stmt.setString(1, myInterval);
Using the new driver I am no longer able to do this and get the
following error:
column "num_hours" is of type interval but expression is of type text
I have looked through the driver source code, but don't see that I could
send the value as an "object" or as one of the other time-related types.
If someone might be able to point me to a solution to this problem, I'd
be most appreciative.
Thanks.
- Will
---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majo...@postgresql.org so that your
message can get through to the mailing list cleanly
> I have just upgraded to the 8.1-404 version of the JDBC driver from a
> much older version. In the past I had been able load an interval into my
> database by sending it as a string, as such:
>
> String myInterval = "08:00"; // 8 hour interval
> ...
> stmt.setString(1, myInterval);
>
> Using the new driver I am no longer able to do this and get the
> following error:
>
> column "num_hours" is of type interval but expression is of type text
Use "CAST (? AS INTERVAL)" in your query, or use the custom
org.postgresql.util.PGInterval type and pass an instance to setObject().
-O
---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings
Thanks, much! I figured the latter out subsequent to my initial post,
but had not thought of the former, which ended up being more elegant for
my application. Again, thanks.
- Will
---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend