select --*
request_session_id as spid,
resource_type as restype,
resource_database_id as dbid,
DB_NAME(resource_database_id) as dbname,
resource_description as res,
resource_associated_entity_id as resid,
case when resource_type= 'OBJECT' then OBJECT_NAME( resource_associated_entity_id )
end
as objectName,
request_mode as mode,
request_status as status
from sys.dm_tran_locks select --*
session_id as spid,
connect_time,
last_read,
last_write,
most_recent_sql_handle,
text
from sys.dm_exec_connections
cross apply sys.dm_exec_sql_text(most_recent_sql_handle) --as a
where session_id in (56,57) select --*
session_id as spid,
login_time,
host_name,
program_name,
login_name,
nt_user_name,
last_request_start_time,
last_request_end_time
from sys.dm_exec_sessions
where session_id in (56,57) select --*
[session_id],
[blocking_session_id],
[command],
[sql_handle],
text,
[database_id],
[wait_type],
[wait_time],
[wait_resource]
from sys.dm_exec_requests
cross apply sys.dm_exec_sql_text([sql_handle])
where blocking_session_id>0
ISOLATION   LEVEL note 读操作 写操作
READ   UNCOMMITTED(with nolock) 脏读 不请求共享锁 不妨碍获取排他锁
READ COMMITED 不可重复读 读操作不会事务持续期间内保留共享锁,
    甚至在语句结束前也不能一直保留共享锁,
    这意味着在一个事务处理内部对相同数据资源的两个读操作之间,没有共享锁会锁定该资源
因此,其他事务可以在两个读操作
    之间更改数据资源,
    读操作因而可能每次得到不同的取值
REPEATABLE   READ(holdlock) 幻读 共享锁一直保持到事务完成为止 能阻塞Update,不能阻Insert   ,
    能够防止并发负面影响:丢失更新
SERIALIZABLE   读操作锁定满足查询搜索条件的键的整个范围 能阻塞Update,Insert
SNAPSHOT 基于行版本控制(非共享锁) 
     数据库级别开启
    set allow_snapshot_isolation on 
读操作读取的数据行   是事务启动前最后提交的版本 进行更新冲突检测
READ COMMITTED   SNAPSHOT 基于行版本控制(非共享锁) 
    数据库级别开启
     set read_committed_snapshot_on 
读操作读取的数据行   是语名启动前最后提交的版本 不进行更新冲突检测

SQL 事务隔离学习的更多相关文章

  1. 30分钟全面解析-SQL事务+隔离级别+阻塞+死锁

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  2. 图解 sql 事务隔离级别

    sql 事务隔离级别有四种分种为: 一 Read Uncpommitted(未提交读) 二 Read Committed(提交读) 三 Repeated Read(可重复读) 四 Serializab ...

  3. SQL 事务隔离级别

    转载来源:https://www.cnblogs.com/chenmh/p/3998614.html 标签: SQL SEERVER/MSSQL SERVER/SQL/事务隔离级别选项/设置数据库事务 ...

  4. 【概念原理】四种SQL事务隔离级别和事务ACID特性

    摘要: SQL事务隔离级别和事务的ACID特性 事务是一组读写操作,并且具有只有所有操作都成功才算成功的特性.   事务隔离级别 SQL事务隔离级别由弱到强分别是:READ_UNCOMMITTED.R ...

  5. (4.12)全面解析-SQL事务+隔离级别+阻塞+死锁

    30分钟全面解析-SQL事务+隔离级别+阻塞+死锁 转自:https://blog.csdn.net/slowlifes/article/details/52752735 2016年10月07日 23 ...

  6. (分享别人的一篇好文章,来自jackson0714)30分钟全面解析-SQL事务+隔离级别+阻塞+死锁()

    30分钟全面解析-SQL事务+隔离级别+阻塞+死锁 阅读目录 概述: 一.事务 二.锁 三.阻塞 四.隔离级别 五.死锁 以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQ ...

  7. SQL事务隔离级别

    数据库是要被广大客户所共享访问的,那么在数据库操作过程中很可能出现以下几种不确定情况. 更新丢失(Lost update) 两个事务都同时更新一行数据,但是第二个事务却中途失败退出,导致对数据的两个修 ...

  8. SQL Server 事务隔离级别详解

    标签: SQL SEERVER/MSSQL SERVER/SQL/事务隔离级别选项/设置数据库事务级别 SQL 事务隔离级别 概述 隔离级别用于决定如果控制并发用户如何读写数据的操作,同时对性能也有一 ...

  9. 【转】SQL Server 事务隔离级别详解

    SQL 事务隔离级别 概述 隔离级别用于决定如果控制并发用户如何读写数据的操作,同时对性能也有一定的影响作用. 步骤 事务隔离级别通过影响读操作来间接地影响写操作:可以在回话级别上设置事务隔离级别也可 ...

随机推荐

  1. How to upgrade Subversion on OSX

    How to upgrade Subversion on OSX http://andowebsit.es/blog/noteslog.com/post/how-to-upgrade-subversi ...

  2. vue吃进去的object已经变了样,不在是原来的!

    直接上代码: class data { public list:number[]; constructor() { this.list=[0,0,0]; } } class methods exten ...

  3. BackTrack5-r3配置网络信息

    设置静态IP在BT终端输入:ifconfig -a                           按回车// 查看所有网卡在BT终端输入:vi /etc/network/interfaces   ...

  4. 安装和使用Visual Studio 2013并进行简单的单元测试

    现在我正在安装visual studio 2013,我听说好多同学都在安装visual studio 2015,但是他好像只支持Win10吧,我就退而求其次安装了visual studio 2013. ...

  5. vs2013提高编译速度

    最近做新的项目,很多库是之前项目积累下来的库.在windows下使用的IDE是vs2013,整体编译的时候,明显感觉编译速度较慢,文件是一个一个编的. 从编译器本身的角度,vs2013是提供了加快编译 ...

  6. pdf转成图片

    http://blog.csdn.net/wydhao123/article/details/51596028 jar commons-logging.jar. pdfbox-2.0.1.jar.fo ...

  7. stunnel-client

    #!/bin/bash # giving user passwordless sudo privileges USER=`whoami` MYPATH=$(cat /etc/passwd|grep $ ...

  8. h5移动端-1

    iphone3 : 设备分辨率 : 320*480 屏幕分辨率 : 320*480 iphone4 : 设备分辨率 : 320*480 屏幕分辨率 : 640*960 iphone5 : 设备分辨率 ...

  9. ZTOOLS HTTP&REGEXTEST&JSONS 工具包

    下载地址:点击下载

  10. Adb工具配置和设备连接

    ADB全程Android Debug Bridge,是Android SDK里的一个工具,用这个工具可以直接操作管理Android模拟器或者真实的Android设备(如手机). 一.Adb工具使用配置 ...