日期:2014-05-17 浏览次数:20457 次
use tempdb if OBJECT_ID('tb') is not null drop table tb go create table tb (b datetime, e datetime, id int ) go insert into tb(b,id) select GETDATE(),1 update tb set e=GETDATE() where id=1 select * from tb drop table tb
--试试到底有没有时间差,WAITFOR 后有,那就证明不在WAITFOR的时候时间这两句sql的时间差太小了 truncate table tb insert into tb(b,id) select GETDATE(),1 WAITFOR DELAY '00:00:01' update tb set e=GETDATE() where id=1
------解决方案--------------------
我在2008 r2上测了,其实2008r2也会有好几次存在一样的时间,如果你的操作太短以至少于0.003秒,那么SQLServer的datetime类型无法识别出来的。我把你的脚本改成datetime2之后,就可以看到差别了。但是也是刚好0.003秒,所以估计是getdate函数的问题
------解决方案--------------------
这个跟电脑反应速度有关,你多执行几次就会出现一样和不一样了
没有什么好神奇的,结贴吧