用myeclipse查询数据库datetime类型的字段结果多了“.0”,怎么回事?

这是数据库里的表

这是使用Navicat Premium自带的查询功能查询的结果

这是使用myeclipse代码查询的结果,多了“.0”,这是怎么回事???求解答呀

用myeclipse查询数据库datetime类型的字段结果多了“.0”是因为时间精确到毫秒。
如果在应用程序中使用以下语句设定日期格式,那么就会多出毫秒。

DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff")

比如:
假设时间为-2016-03-11 12:50:49.00
{0:yyyy-MM-dd hh:mm:ss.fff}:使用12小时制格式化日期
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-03-29
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String dateStr = sdf.format(要转的时间); //日期转成字符串
最后输出字符串就行了追问

我是这么写的
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String datetime = sf.format(rs.getString("change_time"));
提示这个错误:
Cannot format given Object as a Date

第2个回答  2013-03-29
毫秒 你格式化为 yyyy-MM-dd HH:mm:ss就行了追问

原来如此,我从数据库里取出来只能是rs.getString("change_time")(这样的话结果就是2013-03-29 00:00:00.0)或者是rs.getDate("change_time")(这样的话结果就是2013-03-29),所以只能用rs.getString("change_time"),但是怎么把字符串转换成格式化为 yyyy-MM-dd HH:mm:ss的时间呢?

追答

你可以把string转化成date类型 然后格式化

本回答被提问者采纳
第3个回答  2013-03-29
处理一下就可以了 yyyy-MM-dd HH:mm:ss追问

原来如此,我从数据库里取出来只能是rs.getString("change_time")(这样的话结果就是2013-03-29 00:00:00.0)或者是rs.getDate("change_time")(这样的话结果就是2013-03-29),所以只能用rs.getString("change_time"),但是怎么把rs.getString("change_time")的结果转换成格式化为 yyyy-MM-dd HH:mm:ss的时间呢?

...来查询对应时间数据库的信息 这个JSP代码怎么写
<%for (int i=2000; i<=2020; i++) {%> <option value=<%=i%>><%=i%> <%}%> <%for (int i=1; i<=12; i++) {%><option value=<%=i%>><%=i%>月<%}%>

相似回答