SQLSERVER各种锁——实例

实验前先介绍下     sp_lock

SP_LOCK报告有关锁的信息。

spid dbid ObjId IndId Type Resource Mode Status
51 5 0 0 DB   S GRANT

spid:进程id

dbid:数据库id

objid:数据库内对象id

IndId:    持有锁的索引的标识号。

type:锁的资源类型 

    

RID = 表中单个行的锁,由行标识符 (RID) 标识。
KEY = 索引内保护可串行事务中一系列键的锁。
PAG = 数据页或索引页的锁。
EXT = 对某区的锁。
TAB = 整个表(包括所有数据和索引)的锁。
DB = 数据库的锁。
FIL = 数据库文件的锁。
APP = 指定的应用程序资源的锁。
MD = 元数据或目录信息的锁。
HBT = 堆或 B 树索引的锁。在 SQL Server 中此信息不完整。
AU = 分配单元的锁。在 SQL Server 中此信息不完整。

Resourcesyslockinfo.restext 中的值对应的锁资源的位置。

Mode:请求的锁的类型

主要的有:

     共享锁 (S) 用于不更改或不更新数据的操作(只读操作),如SELECT语句。
更新锁 (U) 用于可更新的资源中。防止当多个会话在读取、锁定以及随后可能进行的资源更新时发生常见形式的死锁。
排它锁 (X) 用于数据修改操作,例如INSERT、UPDATE或DELETE。确保不会同时对同一资源进行多重更新。
意向锁 (I+_)  用于建立锁的层次结构。意向锁的类型为:意向共享(IS)、意向排它(IX)以及与意向排它共享(SIX)。
架构锁 在执行依赖于表架构的操作时使用。架构锁的类型为:架构修改(Sch-M)和架构稳定性(Sch-S)。
大容量更新锁 (BU)向表中大容量复制数据并指定了TABLOCK提示时使用。

详细的:

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值