From: | jon(at)it-konsulenterne(dot)dk (Jon Windfeld Bundesen) |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | What JDBC datatype can be used for DATETIME ? |
Date: | 1999-08-19 15:42:05 |
Message-ID: | 37BC25CD.DB267B3F@it-konsulenterne.dk |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
I'm trying to read a DATETIME field from my Pg 6.4.2 using JDBC.
When i try reading the date from my ResultSet using ResultSet.getDate()
i get an error stating:
java.sql.SQLException: Bad Date Format: at 0 in Thu Aug 19 12:19:52 1999
CEST
at postgresql.ResultSet.getDate(ResultSet.java:407)
at TestDate.main(TestDate.java:32)
When i try using ResultSet.getTimestamp() instead, i also get an error:
java.lang.NumberFormatException: 1999 CEST
at java.lang.Float.<init>(Float.java)
at postgresql.ResultSet.getTimestamp(ResultSet.java:455)
at TestDate.main(TestDate.java:32)
I CAN use getString(), but i'd like to get a real Date object, not just
a String. Can anyone help ?
Best regards,
Jon Bundesen.
Here is the code if anyone is interested:
===========================
Table = foo
+----------------------------------+----------------------------------+-------+
| Field |
Type | Length|
+----------------------------------+----------------------------------+-------+
| dt |
datetime | 8 |
+----------------------------------+----------------------------------+-------+
import java.sql.*;
import java.sql.Date;
public class TestDate {
public static void main (String args[])
throws Exception
{
Connection con;
Statement statement;
PreparedStatement preparedStatement;
ResultSet rs;
// String url = "jdbc:postgresql:test1";
String url = "jdbc:postgresql://127.0.0.1:5432/test1";
Class.forName("postgresql.Driver");
con = DriverManager.getConnection(url, "jon", "");
con.setAutoCommit( false );
//
statement = con.createStatement();
statement.executeUpdate("insert into foo values ( current_timestamp
)");
con.commit();
statement.close();
//
statement = con.createStatement();
rs = statement.executeQuery("SELECT * FROM foo");
while (rs.next()) {
System.out.println("Result: " + rs.getTimestamp(1));
//System.out.println("Result: " + rs.getDate(1));
}
rs.close();
statement.close();
//
con.close();
}
}
From | Date | Subject | |
---|---|---|---|
Next Message | Nathan Gelbard | 1999-08-19 18:37:37 | searching time arrays |
Previous Message | Carlos Henrique Righetto Moreira | 1999-08-19 14:30:41 | selecting newer rows |