我需要用日期和时间更新记录,但我很困惑使用 sql server 2005 的 CURRENT_TIMESTAMP 或 JAVA 的日期对象,两者都给了我相同的结果。
例子:
select CURRENT_TIMESTAMP
这将打印2012-08-27 14:30:17.193
下面的这个java代码也会明显地做同样的事情,但有什么区别。
Date dNow = new Date( );
SimpleDateFormat ft =
new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss.SSS ");
System.out.println("Current Date: " + ft.format(dNow));
更新:
当我使用 CURRENT_TIMESTAMP 时,我在下面有 2 个 prepareStatement,而对于第二个,我使用了 JAVA 的日期对象(日期对象让它是 util.Date 或 sql.Date)。
声明1
pst = con.prepareStatement("insert into sLog(logUser, logType, logSystem, logTime)
values(?, ?, ?, CURRENT_TIMESTAMP)");
pst.setString(1, logUser);
pst.setString(2, logType);
pst.setString(3, logSystem);
pst.executeUpdate();
声明2
pst = con.prepareStatement("insert into sLog(logUser, logType, logSystem, logTime)
values(?, ?, ?, ?)");
pst.setString(1, logUser);
pst.setString(2, logType);
pst.setString(3, logSystem);
pst.setString(4, format(dNow));
pst.executeUpdate();