我需要将数据从Postgres加载到Oracle。从Postgres读取数据时我得到了以下格式“2013-02-13 00:30:22.402”的日期,现在我需要将这个日期加载到oracle db中 我试过但是得到了异常
String dd = "2013-02-13 00:30:22.402";
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
java.sql.Date dateform=(Date) formatter.parse(dd);
System.out.println(dateform);
引发此异常:
Exception in thread "main" java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date
at ghg.main(ghg.java:26)
答案 0 :(得分:0)
parse返回java.util.Date
,因此您需要使用构造函数new Date(long l)
构造一个新的sql Date对象:
java.sql.Date dateform= new java.sql.Date(formatter.parse(dd).getTime());
答案 1 :(得分:0)
这样做
java.util.Date date = formatter.parse(dd);
java.sql.Date sqlDate = new java.sql.Date(date.getTime());
答案 2 :(得分:0)
默认情况下解析函数返回Date对象。所以你不能投出回报值。
日期解析(字符串来源) 从给定字符串的开头解析文本以生成日期。
String dd = "2013-02-13 00:30:22.402";
DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
java.sql.Date dateform=formatter.parse(dd);