zoukankan      html  css  js  c++  java
  • SQL 事务隔离级别

     隔离级别用于决定如何控制并发用户如何读写数据的操作,同时对性能也有一定的影响作用。

    事务隔离级别通过影响读操作来间接地影响写操作;可以在回话级别上设置事务隔离级别也可以在查询(表级别)级别上设置事务隔离级别。

    事务隔离级别总共有6个隔离级别:

    READ UNCOMMITTED(未提交读,读脏),相当于(NOLOCK)

    READ COMMITTED(已提交读,默认级别)

    REPEATABLE READ(可以重复读),相当于(HOLDLOCK)

    SERIALIZABLE(可序列化)

    SNAPSHOT(快照) READ

    COMMITTED SNAPSHOT(已经提交读隔离)

    对于前四个隔离级别:READ UNCOMMITTED<READ COMMITTED<REPEATABLE READ<SERIALIZABLE 隔离级别越高,读操作的请求锁定就越严格,锁的持有时间久越长;所以隔离级别越高,一致性就越高,并发性就越低,同时性能也相对影响越大.

    获取事务隔离级别(isolation level)

    DBCC USEROPTIONS 

    设置隔离

    设置回话隔离
    SET TRANSACTION ISOLATION LEVEL <ISOLATION NAME>
    --注意:在设置回话隔离时(REPEATABLE READ)两个单词需要用空格间隔开,但是在表隔离中可以粘在一起(REPEATABLEREAD)
    
    设置查询表隔离
    SELECT ....FROM <TABLE> WITH (<ISOLATION NAME>) 
  • 相关阅读:
    WPF元素之间的关系
    依赖属性
    多线程显示运行状态
    WPF 基本知识
    SQL 这个删除重复行怎么做
    路由事件
    WPF的数据邦定
    SQL对表中XML列的查询
    WMI访问注册表读取系统信息
    创建第一个WPF应用程序
  • 原文地址:https://www.cnblogs.com/chenh/p/6768778.html
Copyright © 2011-2022 走看看