zoukankan      html  css  js  c++  java
  • SQL Server 手工 锁表、查询被锁表、解锁相关语句

    SQL Server 手工 锁表、查询被锁表、解锁相关语句

    --锁表(其它事务不能读、更新、删除)
    BEGIN TRAN
    SELECT * FROM <表名> WITH(TABLOCKX);
    WAITFOR delay '00:00:20'
    COMMIT TRAN
    
    
    --锁表(其它事务只能读,不能更新、删除)
    BEGIN TRAN
    SELECT * FROM <表名> WITH(HOLDLOCK);
    WAITFOR delay '00:00:20'
    COMMIT TRAN
    
    --锁部分行
    BEGIN TRAN
    SELECT * FROM <表名>  WITH(XLOCK) WHERE ID IN ('81A2EDF9-D1FD-4037-A17B-1369FD3B169B');
    WAITFOR delay '00:01:20'
    COMMIT TRAN
    
    --查看被锁表
    select   request_session_id   锁表进程,OBJECT_NAME(resource_associated_entity_id) 被锁表名  
    from   sys.dm_tran_locks where resource_type='OBJECT';
    
    --解锁
    declare @spid  int
    Set @spid  = 55 --锁表进程
    declare @sql varchar(1000)
    set @sql='kill '+cast(@spid  as varchar)
    exec(@sql)
  • 相关阅读:
    Oracle配置手册
    Vim配置手册
    高斯消元
    dp专场的蒟蒻题解
    mac 软件意外退出
    spring security整体流程
    服务启动shell脚本
    nohup 启动命令
    linux service脚本
    docker 安装prometheus和grafna
  • 原文地址:https://www.cnblogs.com/wissly/p/15655051.html
Copyright © 2011-2022 走看看