• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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

    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

    declare @spid int 
    Set @spid = 57 --锁表进程
    declare @sql varchar(1000)
    set @sql='kill '+cast(@spid as varchar)
    exec(@sql)
    您可能感兴趣的文章:
    • sql server中死锁排查的全过程分享
    • 详解SQL Server中的事务与锁问题
    • sqlserver:查询锁住sql以及解锁方法
    • SQL Server学习笔记之事务、锁定、阻塞、死锁用法详解
    • Sql Server 死锁的监控分析解决思路
    • Sql Server如何查看被锁的表及解锁的方法
    • SqlServer查询和Kill进程死锁的语句
    • sqlserver进程死锁关闭的方法
    • 查找sqlserver查询死锁源头的方法 sqlserver死锁监控
    • SQL Server三种锁定模式的知识讲解
    上一篇:SQLServer存储过程中事务的使用方法
    下一篇:浅析SQL Server中的执行计划缓存(上)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

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