zoukankan      html  css  js  c++  java
  • 查询并验证 TransactionScope 隔离级别

    void Main()
    {
        this.ExecuteQuery<string>(@"SELECT  CASE transaction_isolation_level
                                          WHEN 0 THEN 'Unspecified'
                                          WHEN 1 THEN 'ReadUncommitted'
                                          WHEN 2 THEN 'ReadCommitted'
                                          WHEN 3 THEN 'Repeatable'
                                          WHEN 4 THEN 'Serializable'
                                          WHEN 5 THEN 'Snapshot'
                                        END AS TRANSACTION_ISOLATION_LEVEL
                                FROM    sys.dm_exec_sessions
                                WHERE   session_id = @@SPID;", new object[] { }).Dump();
    
        using (var tran = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 0, 120)))
        {
            this.ExecuteQuery<string>(@"SELECT  CASE transaction_isolation_level
                                          WHEN 0 THEN 'Unspecified'
                                          WHEN 1 THEN 'ReadUncommitted'
                                          WHEN 2 THEN 'ReadCommitted'
                                          WHEN 3 THEN 'Repeatable'
                                          WHEN 4 THEN 'Serializable'
                                          WHEN 5 THEN 'Snapshot'
                                        END AS TRANSACTION_ISOLATION_LEVEL
                                FROM    sys.dm_exec_sessions
                                WHERE   session_id = @@SPID;", new object[] { }).Dump();
        }
        
        var transactionOptions = new System.Transactions.TransactionOptions();
        transactionOptions.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
        using (var transactionScope = new System.Transactions.TransactionScope(System.Transactions.TransactionScopeOption.Required, transactionOptions))
        {
            this.ExecuteQuery<string>(@"SELECT  CASE transaction_isolation_level
                                          WHEN 0 THEN 'Unspecified'
                                          WHEN 1 THEN 'ReadUncommitted'
                                          WHEN 2 THEN 'ReadCommitted'
                                          WHEN 3 THEN 'Repeatable'
                                          WHEN 4 THEN 'Serializable'
                                          WHEN 5 THEN 'Snapshot'
                                        END AS TRANSACTION_ISOLATION_LEVEL
                                FROM    sys.dm_exec_sessions
                                WHERE   session_id = @@SPID;", new object[] { }).Dump();
        }
    }
    
    // Define other methods and classes here
  • 相关阅读:
    005 HTML+CSS(Class027
    004 HTML+CSS(Class024
    003 HTML+CSS(Class011
    002HTML+CSS(class007-010)
    001HTML+CSS(class001-006)
    021 vue路由vue-router
    020 Vue 脚手架CLI的使用
    019 Vue webpack的使用
    018 vue的watch属性
    017 vue的插槽的使用
  • 原文地址:https://www.cnblogs.com/nanfei/p/12964642.html
Copyright © 2011-2022 走看看