gpt4 book ai didi

sqlserver锁表、解锁、查看销表的方法

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 31 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章sqlserver锁表、解锁、查看销表的方法由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

锁定数据库的一个表 。

  。

复制代码 代码如下:

SELECT * FROM table WITH (HOLDLOCK)

  。

注意: 锁定数据库的一个表的区别 。

  。

复制代码 代码如下:

SELECT * FROM table WITH (HOLDLOCK)

  。

其他事务可以读取表,但不能更新删除 。

  。

复制代码 代码如下:

SELECT * FROM table WITH (TABLOCKX)

  。

其他事务不能读取表,更新和删除 SELECT 语句中“加锁选项”的功能说明 SQL Server提供了强大而完备的锁机制来帮助实现数据库系统的并发性和高性能。用户既能使用SQL Server的缺省设置也可以在select 语句中使用“加锁选项”来实现预期的效果。 本文介绍了SELECT语句中的各项“加锁选项”以及相应的功能说明 。

查看被锁表:

  。

复制代码 代码如下:

select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) tableName
from sys.dm_tran_locks where resource_type='OBJECT'

  。

spid 锁表进程 tableName 被锁表名 [@more@] 。

解锁:

创建一个临时Table 。

?
1
2
3
4
5
6
7
8
9
10
11
CREATE TABLE #HarveyLock
(
SPID INT ,
DBID INT ,
OBJID INT ,
INDID INT ,
TYPE VARCHAR (100),
RESOURCE VARCHAR (100),
MODE VARCHAR (100),
STATUS VARCHAR (100)
)

将Lock信息存入该Table INSERT INTO #HarveyLock EXEC SP_LOCK 。

3.在Table中下条件查询得到的LOCK SELECT * FROM #HarveyLock 。

4.KILL 相关LOCK KILL @SPID 例 。

?
1
2
3
4
5
declare @spid int
Set @spid = 57 --锁表进程
declare @sql varchar (1000)
set @sql= 'kill ' + cast (@spid as varchar )
exec (@sql)

  。

最后此篇关于sqlserver锁表、解锁、查看销表的方法的文章就讲到这里了,如果你想了解更多关于sqlserver锁表、解锁、查看销表的方法的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com