Transcation And Lock--SQL SERVER 事务隔离级别

SQL SERVER 事务隔离级别:
1.未提交读(READ UNCOMMITED)
    允许脏读,读取数据时不加共享锁,与使用WITH(NOLOCK)结果相同
2.已提交读
    不允许脏读,读取数据时加共享锁,但在查询结束后立即释放共享锁,而不用等到事务结束
3.可重复读
    不允许“不可重复读”,读取数据时加共享锁,将共享锁一直保持到事务结束,从而阻塞其他事务修改被读取的数据
4.快照
    SQL SERVER 有两种行版本控制,在事务修改数据时,保留一份未修改前的数据副本,其他事务读取数据时访问副本数据,从而有效较少读和写的阻塞
    a)已提交读快照隔离(READ_COMMITED_SNAPSHOT)
    b)SNAPSHOT事务隔离级别
5.可序列化
    事务读取时,除对读取数据加共享锁外,在索引或表上加范围共享锁,并将锁保持到事务结束,阻塞其他事务插入满足查询条件的记录,从而避免幻读。与使用SELECT

原文地址:https://www.cnblogs.com/TeyGao/p/3522961.html