java中的查询与mysql中的查询不同
可能重复:java中的查询与mysql中的查询不同,java,mysql,jdbc,Java,Mysql,Jdbc,可能重复: 如果我从consele mysql执行此操作: SELECT CREATION from MYDATABASE WHERE NAME='MyData'; 我得到2012-07-12 13:42:55 但如果从Java执行此操作: String sql = "SELECT CREATION from MYDATABASE WHERE NAME=?"; PreparedStatement ps = null; String creationQuery; ResultS
如果我从consele mysql执行此操作:
SELECT CREATION from MYDATABASE WHERE NAME='MyData';
我得到2012-07-12 13:42:55
但如果从Java执行此操作:
String sql = "SELECT CREATION from MYDATABASE WHERE NAME=?";
PreparedStatement ps = null;
String creationQuery;
ResultSet rs = null;
try
{
ps = conn.prepareStatement(sql);
ps.setString(1, "MyData");
rs = ps.executeQuery();
creationQuery = rs.next() ? rs.getString(1) : null;
}
我得到了2012-07-12 13:42:55.0
为什么?这与以下事实有关:您从Java查询中收到的是一个,它是一个普通
util.Date
的包装器,它也可以保存纳秒。如果查看该类的方法,您会看到它被覆盖以使用该格式 yyyy mm dd hh:mm:ss.FFFFFFF 在哪里 fffffffff 表示纳秒
尽管这两个结果表示相同的时间,但只是表示方式不同而已。这与以下事实有关:您从Java查询中收到的是一个,它是一个常规的
util.Date
的包装,它也可以保存纳秒。如果查看该类的方法,您会看到它被覆盖以使用该格式 yyyy mm dd hh:mm:ss.FFFFFFF 在哪里 fffffffff 表示纳秒
尽管这两个结果表示相同的时间,但只是表示形式上的差异。查看java和sql的日期对象之间的差异非常感谢并抱歉重复查看java和sql的日期对象之间的差异非常感谢并抱歉重复