SQLServer模拟死锁以及查询死锁进程和表

 时间:2026-04-23 13:27:33

1、连接SQLServer

SQLServer模拟死锁以及查询死锁进程和表

2、新建一个查询框

SQLServer模拟死锁以及查询死锁进程和表

3、创建2个表:

CREATE TABLE Lock1(C1 int default(0));


CREATE TABLE Lock2(C1 int default(0));
INSERT INTO Lock1 VALUES(1);
INSERT INTO Lock2 VALUES(1);

SQLServer模拟死锁以及查询死锁进程和表

4、继续新建一个文件执行:

Begin Tran


  Update Lock2 Set C1=C1+1;
  WaitFor Delay '00:00:30';
  SELECT * FROM Lock1
Rollback Tran;

SQLServer模拟死锁以及查询死锁进程和表

5、再新增一个文件执行:

Begin Tran


  Update Lock1 Set C1=C1+1;
  WaitFor Delay '00:00:30';
  SELECT * FROM Lock2
Rollback Tran;

SQLServer模拟死锁以及查询死锁进程和表

6、这样就能模拟死锁报错了

SQLServer模拟死锁以及查询死锁进程和表

7、然后通过这个SQL查报错的表和进程:


SELECT request_session_id spid, OBJECT_NAME( resource_associated_entity_id )
tableName FROM sys.dm_tran_locks WHERE resource_type = 'OBJECT'

SQLServer模拟死锁以及查询死锁进程和表

  • foobar2000如何在播放列表中显示文件名
  • 日常生活中该如何养殖皋月杜鹃?
  • 韩式辣炒五花肉
  • 勇者大冒险激活码怎么获得?勇者大冒险好不好玩
  • 打水光针这八个问题你弄清楚了吗?
  • 热门搜索
    手汗多怎么办 鱼刺卡在喉咙里怎么办 开塞露怎么用便秘 怎么连接wifi 手机被偷了怎么找回来 怎么练弹跳 老掉头发怎么办 狗狗疫苗怎么打 嗓子疼怎么办咽口水疼 怎么破