sql-server – 模拟死锁的代码
发布时间:2020-12-12 06:15:11 所属栏目:MsSql教程 来源:网络整理
导读:我正在测试我的应用程序我需要一些稳定模拟数据库站点上的死锁的代码(如果可能的话,sql脚本). 谢谢. 添加: Reproducing deadlocks involving only one table 解决方法 最好的方法是使用已有的表格. 创建两个表 – table-a,table-b 对于测试,您甚至可以使用相
我正在测试我的应用程序我需要一些稳定模拟数据库站点上的死锁的代码(如果可能的话,sql脚本).
谢谢. 添加: Reproducing deadlocks involving only one table 解决方法最好的方法是使用已有的表格.创建两个表 – table-a,table-b 对于测试,您甚至可以使用相同的信息更新同一列 所以你不会影响任何真实的数据. 例如 打开两个会话到同一个数据库. BEGIN TRAN update table_a set ID=ID where ID = 100; 两跑 BEGIN TRAN update table_b set ID=ID where ID =100; 然后,将更新语句复制到对方会话并同时运行. update table_b set ID=ID where ID =100; 成两半 update table_a set ID=ID where ID = 100; 我刚刚尝试了这个并开始使用MS-SQL Msg 1205,Level 13,State 56,Line 1 Transaction (Process ID 23) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |