Re: BUG #1177: JDBC driver doesn't handle all dates correctly
От | Kris Jurka |
---|---|
Тема | Re: BUG #1177: JDBC driver doesn't handle all dates correctly |
Дата | |
Msg-id | Pine.BSO.4.56.0406221731130.115@leary.csoft.net обсуждение исходный текст |
Ответ на | BUG #1177: JDBC driver doesn't handle all dates correctly ("PostgreSQL Bugs List" <pgsql-bugs@postgresql.org>) |
Список | pgsql-bugs |
On Tue, 22 Jun 2004, PostgreSQL Bugs List wrote: > > The following bug has been logged online: > > Bug reference: 1177 > Logged by: Jan Normann Nielsen > Email address: spam@dubbekarl.dk > PostgreSQL version: 7.4 > Description: JDBC driver doesn't handle all dates correctly > > In AbstractJdbc1Statement.setDate(int parameterIndex, java.sql.Date x), the > date 'x' is converted to a string by using x.toString() before being sent as > a parameter to a SQL-query, i.e. an INSERT-statement. The JavaDocs specify > that the result of this this toString method is the same as > > new java.text.SimpleDateFormat("yyyy-MM-dd").format(x) > > which, according to the documentation for SimpleDateFormat, will zero-pad > the year if it is less than four digits. This can happen if a very strange > date is chosen, which this case shows: > > java.sql.Date x = new java.sql.Date(Long.MAX_VALUE); > System.out.println((int) x.toString().charAt(0)); > I was originally going to label this as a Java bug, but according to this discussion (login required): http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4510956 they have no intention of making toString work for year values > 9999. I'll look at working around this on the driver side. Kris Jurka
В списке pgsql-bugs по дате отправления: