57

ADO.NETを使用するSQLServerのデフォルトのトランザクション分離レベルは何ですか?SQL Serverのデフォルトのインストールと、通常のSystem.Data.SqlClientクラスのみを使用しています。

4

2 に答える 2

68

READ COMMITTEDは、MicrosoftSQLServerデータベースエンジンのデフォルトの分離レベルです。

ソース:

他の分離レベルとの比較は次のとおりです。

のMSDNドキュメントにSqlConnection.BeginTransaction()も記載されていますRead committed

...分離レベルをデフォルトにリセットするには(READ COMMITTED)..。

于 2012-04-03T23:44:27.707 に答える
12

hkfによって受け入れられた回答は、で手動で開始されたトランザクションの正解を示しますSqlConnection.BeginTransaction()。ここで、デフォルトレベルはReadCommittedです。

ただし、これがADO.NETで新しいトランザクションを開始する唯一の方法ではありません。トランザクションは、名前空間のクラスを使用して、特にを作成することによって自動的に作成することもできます。System.TransactionsTransactionScope

手動で開始されたトランザクションとは異なり、System.Transactionsインフラストラクチャによって(したがって、によってTransactionScope)作成されたトランザクションはシリアル化可能です。

詳細については、以下のリンクを参照してください。

于 2013-11-21T17:25:42.057 に答える