zoukankan      html  css  js  c++  java
  • SQL Server 锁实验(INSERT加锁探究)

    insert语句:
    其上锁情况为:
    insert语句会对表上的所有索引作出更新,因此这里看到的索引列较多,我们先把所有的索引搞出来看看:
    可以看到所有索引都涉及到了,然后我们来仔细分析下加锁情况:
    1.表1717581157添加了表级的IX锁,这里objid为41查出来的是NULL表名,不做讨论。
    2.用dbcc page查看一下涉及到的所有页的类型:
    1:640,非聚集索引页
    1:5280,非聚集索引页
    1:27216,非聚集索引页
    1:22872,非聚集索引页
    1:32048,非聚集索引页
    1:50160,非聚集索引页
    1:1449368,非聚集索引页
    1:1461146,数据页(在聚簇表中也叫聚集索引叶子页)
    可以看到每个X模式的KEY锁都对应一个IX锁,形成了8个KEY/PAGE锁对儿。这是因为更新每个索引记录都要在其页上加IX页锁。在这8个锁对儿中7个是非聚集索引的锁,1个是聚集索引的锁。
    同理:delete语句的加锁状况和insert一样。
  • 相关阅读:
    [ python ] 线程的操作
    [ python ] 进程的操作
    RabbitMQ 集群
    RabbitMQ 实践及使用
    RabbitMQ 基础知识
    [ python ] FTP作业进阶
    [ python ] 项目一:FTP程序
    [ python ] 网络编程(2)
    [ python ] 网络编程(1)
    Linux 日志系统及分析
  • 原文地址:https://www.cnblogs.com/leohahah/p/7059886.html
Copyright © 2011-2022 走看看