【发布时间】:2012-07-17 19:45:17
【问题描述】:
例如,存在表 A 和表 B,我需要在 A 和 B 中处理更新,我决定在使用期间对它们进行表锁定(按照我的架构师的要求)。同时,调用另一个过程,该表锁定 B,然后锁定 A。
此交易会完成吗?我感觉它是一个死锁,很确定它没有释放任何资源......
【问题讨论】:
-
这些锁是表锁还是页锁或行锁
-
只是好奇你为什么要使用表锁?你会通过使用表锁来阻止很多用户。而且它会增加死锁的机会。你可以使用行级或页级锁吗?
-
是的,我向我的架构师提出了关于行/页级锁的观点……但客户和管理层希望这样:\
-
祝你好运..一旦系统投入生产..如果您建议这样做来解决最终用户面临的所有死锁和阻塞问题,您可以成为超级明星..顺便说一句,您是否使用快照隔离级别?
标签: sql-server database tsql sql-server-2005