分離レベル (ネイティブ クライアント OLE DB プロバイダー)

適用対象: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)

SQL Server クライアントは、接続のトランザクション分離レベルを制御できます。 トランザクション分離レベルを制御するために、SQL Server Native Client OLE DB プロバイダー コンシューマーは次を使用します。

  • SQL Server Native Client OLE DB プロバイダーの既定の自動コミット モードのプロパティ DBPROP_SESS_AUTOCOMMITISOLEVELSをDBPROPSET_SESSIONします。

    レベルの SQL Server Native Client OLE DB プロバイダーの既定値はDBPROPVAL_TI_READCOMMITTED。

  • ローカルの手動コミット トランザクションには、ITransactionLocal::StartTransaction メソッドの isoLevel パラメーター。

  • MS DTC でコーディネートされる分散トランザクションには、ITransactionDispenser::BeginTransaction メソッドの isoLevel パラメーター。

SQL Server では、ダーティ リード分離レベルでの読み取り専用アクセスを許可します。 他のすべてのレベルでは、SQL Server オブジェクトにロックをかけることによってコンカレンシーを制限します。 クライアントがより高度なコンカレンシー レベルを要求すると、SQL Server はデータへのコンカレント アクセスに対してより厳密な制限を適用します。 データへの最高レベルの同時アクセスを維持するために、SQL Server Native Client OLE DB プロバイダー コンシューマーは、特定のコンカレンシー レベルに対する要求をインテリジェントに制御する必要があります。

Note

SQL Server 2005 (9.x) ではスナップショット分離レベルが導入されました。 詳細については、「スナップショット分離を使用した作業」を参照してください。

参照

トランザクション