ADO.NETを使用するSQLServerのデフォルトのトランザクション分離レベルは何ですか?SQL Serverのデフォルトのインストールと、通常のSystem.Data.SqlClientクラスのみを使用しています。
2 に答える
READ COMMITTEDは、MicrosoftSQLServerデータベースエンジンのデフォルトの分離レベルです。
ソース:
他の分離レベルとの比較は次のとおりです。
のMSDNドキュメントにSqlConnection.BeginTransaction()
も記載されていますRead committed
...分離レベルをデフォルトにリセットするには(READ COMMITTED)..。
hkfによって受け入れられた回答は、で手動で開始されたトランザクションの正解を示しますSqlConnection.BeginTransaction()
。ここで、デフォルトレベルはReadCommittedです。
ただし、これがADO.NETで新しいトランザクションを開始する唯一の方法ではありません。トランザクションは、名前空間のクラスを使用して、特にを作成することによって自動的に作成することもできます。System.Transactions
TransactionScope
手動で開始されたトランザクションとは異なり、System.Transactions
インフラストラクチャによって(したがって、によってTransactionScope
)作成されたトランザクションはシリアル化可能です。
詳細については、以下のリンクを参照してください。