Ryouichi,
Thank you for reporting this bug. I will work on getting your patch
applied this weekend.
thanks,
--Barry
Ryouichi Matsuda wrote:
> I found a bug in PreparedStatement#setTimestamp() of JDBC included
> in PostgreSQL7.2beta4. An attached patch corrects this bug.
>
>
> (1) ".01" sec becomes ".10" sec
>
> $ create table test(ts timestamp);
>
> String sql = "insert into test values(?)";
> PreparedStatement pst = db.prepareStatement(sql);
> pst.setTimestamp(1, Timestamp.valueOf("2002-01-10 19:30:59.01"));
> pst.executeUpdate();
>
> $ select * from test;
> $ 2002-01-10 19:30:59.10+09
>
> Though I inserted ".01" second, ".10" second has been inserted.
> There is this bug in 7.2beta4 and 7.1.3.
>
>
> (2) ".876543210" sec becomes ".87" sec
>
> pst.setTimestamp(1, Timestamp.valueOf("2002-01-10 19:30:59.876543210"));
> pst.executeUpdate();
>
> $ select * from test;
> $ 2002-01-10 19:30:59.87+09
>
> In PostgreSQL7.2, a decimal can insert only two columns, and remainder
> is thrown away.
>
>
> ------------------------------------------------------------------------
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
>