SQL Server 2005是否使用行级锁定或页级锁定作为默认值?我在某些UPDATE上遇到了一些超时错误,并想知道它是否与默认锁定机制有关。
答案 0 :(得分:2)
SQL Server默认使用row-level
锁定
如果您锁定了超过一定数量的行(5000),那么SQL Server
将执行 lock escalation (锁定表而不是分别超过5000行)优化性能并优化资源使用
我的建议是尽可能缩短你的交易。或者你可以使用(NoLock)那些没有被多个用户连续插入的表,比如主表......
我的另一个建议是使用SQL事件探查器。