datetime字段如何更新?
jsp的日期处理为什么那么复杂啊,只不过想把表单提交过了的一个日期和时间串来修改SQL Server 的一个datetime字段,
用了这么复杂的方式还是不行,谁能教教我!
String ds = "2005-05-09 17:34:22";
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date utilDate = df.parse(ds);
java.sql.Date date = new java.sql.Date(utilDate.getTime());
strSql = "select * from 测试 where id=1";
stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs = stmt.executeQuery(strSql);
rs.next();
rs.updateDate("日期",date);
rs.updateRow();
结果:日期 = 2005-5-9 12:00:00 时间不对啊!!!
问题点数:20、回复次数:5Top
1 楼Acylas(Acylas)回复于 2005-05-09 18:16:44 得分 1
Date date = new Date();
String df = new SimpleDateFormat("yyyy-MM-dd HH:mm").format(date);
"UPDATE tt set fdate = '"+df+"' WHERE id=1";
Top
2 楼chongkai()回复于 2005-05-09 18:39:45 得分 18
请看java.sql.Date 和java.sql.Timestamp的API文档。
java.sql.Date 和 java.util.Date不同,它真正的就是一个Date,只能精确到某一天,时分秒全被设为0。
所以,要在sql里面用,必须使用Timestamp。Top
3 楼dreamyxcy()回复于 2005-05-10 01:49:33 得分 1
转换成util.Date吧,看文档里功能多些
"UPDATE tt set fdate =getDate() WHERE id=1"
建议用PreparedStatement而不用Statement
从库中取时用getString(),然后在处理Top
4 楼netgrid(网格)回复于 2005-05-10 16:01:36 得分 0
谢谢 chongkai() 的回答,问题解决!
java.sql.Date date = new java.sql.Date(utilDate.getTime());
改为:java.sql.Timestamp date = new java.sql.Timestamp(utilDate.getTime());
rs.updateDate("日期",date);
改为:rs.updateTimestamp("日期",date);
就OK了!我都差点想放弃datetime字段了!
Top
5 楼netgrid(网格)回复于 2005-05-10 16:09:40 得分 0
。。。在管理里分数已经有了,在这边为什么得分全是0呢?
CSDN好象越改版越出问题了!最近访问经常出错!Top




