Re: Bad value for type date - Mailing list pgsql-jdbc
From | Prasanth |
---|---|
Subject | Re: Bad value for type date |
Date | |
Msg-id | FEEJLKCEOLENDBPKNMCKOEANCEAA.dbadmin@nqadmin.com Whole thread Raw |
In response to | Re: Bad value for type date (Oliver Jowett <oliver@opencloud.com>) |
Responses |
Re: Bad value for type date
(Oliver Jowett <oliver@opencloud.com>)
Re: Bad value for type date (Oliver Jowett <oliver@opencloud.com>) |
List | pgsql-jdbc |
Hi, Below if the code with result set to reproduce the problem. Thanks, -Prasanth. import java.sql.*; import java.util.Calendar; public class TestDate2 { public static void main(String[] args) throws Exception { Class.forName("org.postgresql.Driver"); Connection conn = DriverManager.getConnection(args[0]); Statement stmt = conn.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE); try { stmt.executeUpdate("DROP TABLE testdate2"); } catch (SQLException e) {} stmt.executeUpdate("CREATE TABLE testdate2(id int4 primary key, d date)"); stmt.executeUpdate("INSERT INTO testdate2(id, d) VALUES (1,'10000/02/01')"); Calendar c = Calendar.getInstance(); c.set(Calendar.MONTH, 1); c.set(Calendar.DATE, 1); c.set(Calendar.YEAR, 10000); Date d = new Date(c.getTimeInMillis()); ResultSet rs = stmt.executeQuery("SELECT * FROM testdate2"); while (rs.next()) { rs.updateDate("d", d); rs.updateRow(); d = rs.getDate("d"); System.out.println("Got date: " + d); } rs.close(); stmt.close(); conn.close(); } } -----Original Message----- From: Oliver Jowett [mailto:oliver@opencloud.com] Sent: Saturday, August 20, 2005 8:11 AM To: dbadmin@nqadmin.com Cc: pgsql-jdbc@postgresql.org Subject: Re: [JDBC] Bad value for type date Prasanth wrote: > Below is a small program to test the JDBC date issue I have having. > > I am able to set the date "2/1/10000". But it fails to retrieve it. > > If it is invalid date then it should not even update the database right? I can't reproduce this; the attached testcase produces this against my 8.0 install: Inserting date: 10000-02-01 AD +1300 Got date: 10000-02-01 AD +1300 Got date: 10000-02-01 AD +1300 I get this using both the -310 driver and a build from CVS HEAD. You'll need to give us a compilable testcase that shows the problem to take this any further. The code you provided originally doesn't compile out-of-the-box, is missing schema information, and has a syntactically incorrect query.. It'd also help if you can reproduce your problem without involving a RowSet implementation. -O
pgsql-jdbc by date: