发布网友 发布时间:2022-04-10 19:21
共2个回答
热心网友 时间:2022-04-10 20:50
防止出错的。ROWLOCK 告诉SQL Server只使用行级锁。ROWLOCK语法可以使用在SELECT,UPDATE和DELETE语句中,不过 我习惯仅仅在UPDATE和DELETE语句中使用。如果在UPDATE语句中有指定的主键,那么就总是会引发行级锁的。但是当SQL Server对几个这种UPDATE进行批处理时,某些数据正好在同一个页面(page),这种情况在当前情况下 是很有可能发生的,这就象在一个目录中,创建文件需要较长的时间,而同时你又在更新这些文件。当页面锁引发后,事情就开始变得糟糕了。而如果在 UPDATE或者DELETE时,没有指定主键,数据库当然认为很多数据会收到影响,那样 就会直接引发页面锁,事情同样变得糟糕。热心网友 时间:2022-04-10 22:08
ROWLOCK确保数据的完成性.就是你在插入,更新、删除的那几行将被锁住,其他用户不允许操作这些数据