如下代码
DateTime d=DateTime.Now();SqlCommand cmd=new .....();
cmd.parameters["UpdateTime"].value=d;
cmd.execute();
采用如上语句更新数据库中的时间,共更新5条数据按理,5条数据的UpdateTime都应该一样,因为值都来源于d但实际上,却不一样,如2011-05-22 19:41:27.420 2011-05-22 19:41:27.373...为什么会是这样的结果?SqlServer就算时间精度再高,但同一样变量d的值,也不能有不一样的结果啊。和没打Sql SP4补丁有关系吗?
DateTime d=DateTime.Now();SqlCommand cmd=new .....();
cmd.parameters["UpdateTime"].value=d;
cmd.execute();
采用如上语句更新数据库中的时间,共更新5条数据按理,5条数据的UpdateTime都应该一样,因为值都来源于d但实际上,却不一样,如2011-05-22 19:41:27.420 2011-05-22 19:41:27.373...为什么会是这样的结果?SqlServer就算时间精度再高,但同一样变量d的值,也不能有不一样的结果啊。和没打Sql SP4补丁有关系吗?
代码中不给UpdateTime付值
试试 看
--------------------------------------------是5条语句更新的。
之所以用DateTime.Now而不用getdate,就是想这5条数据UpdateTime的值保持一模一样,怕用了getdate后,语句执行的时间差导致gatedate的值不一致,没想到用DateTime.Now存在变量里,UpdateTime的值依然会有毫秒级的误差。
有误差可以理解,关键是DateTime.Now已经保存在变量d中,按理是不会改变的,奇怪啊
代码中不给UpdateTime付值
试试 看