您现在的位置是:网站首页> 编程资料编程资料
SqlServer表死锁的解决方法分享_MsSql_
2023-05-26
363人已围观
简介 SqlServer表死锁的解决方法分享_MsSql_
其实不光是上面描述的情况会锁住表,还有很多种场景会使表放生死锁,解锁其实很简单,下面用一个示例来讲解:
1 首先创建一个测试用的表:
CREATE TABLE Test
(
TID INT IDENTITY(1,1)
)
2 执行下面的SQL语句将此表锁住:
SELECT * FROM Test WITH (TABLOCKX)
3 通过下面的语句可以查看当前库中有哪些表是发生死锁的:
SELECT request_session_id spid,OBJECT_NAME(resource_associated_entity_id)tableName
FROM sys.dm_tran_locks
WHERE resource_type='OBJECT '
4 上面语句执行结果如下:
spid :被锁进程ID。
tableName:发生死锁的表名。
5 只需要使用kill关键字来杀掉被锁的进程ID就可以对表进行解锁:
KILL 52
1 首先创建一个测试用的表:
复制代码 代码如下:
CREATE TABLE Test
(
TID INT IDENTITY(1,1)
)
2 执行下面的SQL语句将此表锁住:
复制代码 代码如下:
SELECT * FROM Test WITH (TABLOCKX)
3 通过下面的语句可以查看当前库中有哪些表是发生死锁的:
复制代码 代码如下:
SELECT request_session_id spid,OBJECT_NAME(resource_associated_entity_id)tableName
FROM sys.dm_tran_locks
WHERE resource_type='OBJECT '
4 上面语句执行结果如下:
spid :被锁进程ID。
tableName:发生死锁的表名。
5 只需要使用kill关键字来杀掉被锁的进程ID就可以对表进行解锁:
KILL 52
您可能感兴趣的文章:
相关内容
- 在SQL查询中使用LIKE来代替IN查询的方法_MsSql_
- 去掉前面的0的sql语句(前导零,零前缀)_MsSql_
- sqlserver 三种分页方式性能比较[图文]_MsSql_
- sqlserver 多库查询 sp_addlinkedserver使用方法(添加链接服务器)_MsSql_
- SQL学习笔记八 索引,表连接,子查询,ROW_NUMBER_MsSql_
- SQL学习笔记七函数 数字,日期,类型转换,空值处理,case_MsSql_
- SQL学习笔记六 union联合结果集使用_MsSql_
- SQLServer中的切割字符串SplitString函数_MsSql_
- 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等_MsSql_
- mssql存储过程表名和字段名为变量的实现方法_MsSql_

