jdbc如何处理数据库中的DateTime类型的数据??? (30分)

  • 主题发起人 主题发起人 h_o_u_l_i
  • 开始时间 开始时间
H

h_o_u_l_i

Unregistered / Unconfirmed
GUEST, unregistred user!
Access,SQL server中有DateTime类型的字段(如:2003-2-11 14:03:23日期和时间在一起),这样的字段如何在java中获得,java中只有
getDate(),getTime()没有getDateTime();难道非要用两个字段一个存日期,一个存时间,显示时再把两个字段作为字符串加起来.不能
只用一个字段解决问题吗?
 
getDate()得到一个Date对象,该对象包含年月日和时分秒的信息
java.sql.Time类是java.util.Date类的一个thin wrapper,所以同样可以设置Time对象的年月日。
如果对java的基本类不明白,可以多看看java的apido
c。
 
mor说的对
用getDate()就全能得到了。
多上机试试。
 
用getDate()得到一个Date对象,该对象包含年月日和时分秒的信息,然后你可以转换成string格式,取其中的时间或日期了
 
to all:
大家说的知道了,我用的Database是Access有一个表其中有一个日期时间字段,我输入的
值是2003-2-12 14:33:44
但我读出来的总是2003-2-12 0:00:00这是为什么?
我的代码:
DateFormat df=DateFormat.getDateTimeInstance();
java.util.Date date=rs.getDate("createtime");
String tmp=df.format(date);
 
偶试了一下,如果在数据库中一个日期字段值是1975-11-16 7:20

java.util.Date date=rs.getDate(4);
String tmp=df.format(date);
得到的是1975-11-16 0:00:00
-----------------------
java.util.Date date=rs.getTime(4);
String tmp=df.format(date);
得到的是1970-1-1 7:20:00
-----------------------
java.util.Date date=rs.getTimestamp(4);
String tmp=df.format(date);
就可以得到1975-11-16 7:20:00
 
ResultSet的getDate()方法得到的是一个java.sql.Date对象,而不是一个java.util.Date对象。
java.sql包里,Date类只存放年月日信息,Time类只存放时分秒信息,Timestamp则由Date、Time、和纳秒数组成。这三个类都是java.util.Date类的子类,所以都可以使用诸如getYear()和getSecond()之类的方法。
 
后退
顶部