如何设置完整的日期&时间sql使用java,而不只是日期? [英] How do I set a full date & time sql using java, and not just the date?
问题描述
我正在使用我的mysql数据库上的datetime字段(因为它出现 datetime比时间戳更常见) 。我的代码设置日期如下所示:
PreparedStatement ps = conn.prepareStatement(INSERT INTO mytable(datetime_field)VALUES ?))
java.util.Date today = new java.util.Date();
java.sql.Date timestamp = new java.sql.Date(today.getTime());
ps.setDate(1,timestamp);
ps.executeUpdate();
如何设置包含时间的日期?
编辑:我更改了下面的代码,它同时设置了日期和时间。
PreparedStatement ps = conn.prepareStatement(INSERT INTO mytable(datetime_field)VALUES(?))
java.util.Date today = new java.util.Date();
java.sql.Timestamp timestamp = new java.sql.Timestamp(today.getTime());
ps.setTimestamp(1,timestamp);
ps.executeUpdate();
使用 java.sql。时间戳
和 setTimestamp(int,Timestamp)
。 java.sql.Date
是仅日期的,不管其存储的列的类型如何。
I am trying to set a timestamp in my database using java, however in my table all I get is the date, and no time (i.e., looks like "2010-09-09 00:00:00").
I am using a datetime field on my mysql database (because it appears that datetime is more common than timestamp). My code to set the date looks like this:
PreparedStatement ps = conn.prepareStatement("INSERT INTO mytable (datetime_field) VALUES (?)")
java.util.Date today = new java.util.Date();
java.sql.Date timestamp = new java.sql.Date(today.getTime());
ps.setDate(1, timestamp);
ps.executeUpdate();
How do I set the date to include the time?
Edit: I changed the code as per below, and it sets both the date and the time.
PreparedStatement ps = conn.prepareStatement("INSERT INTO mytable (datetime_field) VALUES (?)")
java.util.Date today = new java.util.Date();
java.sql.Timestamp timestamp = new java.sql.Timestamp(today.getTime());
ps.setTimestamp(1, timestamp);
ps.executeUpdate();
Use java.sql.Timestamp
and setTimestamp(int, Timestamp)
. java.sql.Date
is date-only, regardless of the type of the column it's being stored in.
这篇关于如何设置完整的日期&时间sql使用java,而不只是日期?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!