我在 MySQL 数据库上创建了下表:
CREATE TABLE DATES(
DT DATETIME,
TS TIMESTAMP,
);
并将以下数据插入 DATES:
INSERT INTO DATES(DT, TS) VALUES(NOW(), NOW());
因此,当我执行以下查询时:
SELECT * FROM DATES;
结果如下:
_______DT________|_______TS_________
2017-11-26 12:16:34_|_2017-11-26 12:16:34
这是正确的,每个寄存器都保存我将数据插入 DATES 时的当前日期和时间。
但是,当我尝试在 Java 中使用以下查询显示这些值时:
try{
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/MYDB","root","pswrd");
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
ResultSet srs = stmt.executeQuery("SELECT * FROM DATES");
}
catch(Exception e){
e.printStackTrace();
JOptionPane.showMessageDialog(null, "Error.");
}
我得到以下输出:
____DT____|____TS____
2017-11-26_|_2017-11-26
也就是说,查询只显示不完整的值,因为它只返回存储的日期值而不是时间。
有没有办法同时显示日期和时间,而不仅仅是日期?
此外,我使用 JTable 来显示这些值,因为我找不到将它们存储在变量中并显示它们的方法:
JOptionPane.showMessageDialog(null, "Date & Time: " + <<I want the values here>>);
任何帮助将不胜感激。提前致谢!