トランザクション (SQL Server Compact)
トランザクションは、データベースの一連の変更を 1 つの論理操作にグループ化するためのメカニズムです。データベースに複数の変更を行った後、これらの変更を 1 つの単位としてコミットまたはキャンセルできます。Microsoft SQL Server Compact はトランザクションをサポートしています。トランザクションは、複数の方法で使用できます。
プログラム上で ADO.NET または OLE DB の API 関数を使用する方法
デスクトップで Visual Studio 2010 SP1 を使用する方法
トランザクションにより、原子性、一貫性、分離性、および持続性 (ACID) のプロパティを使用して、データがデータベースに正しくコミットされるようになります。トランザクションの ACID プロパティの詳細については、SQL Server オンライン ブックの「トランザクション」を参照してください。
SQL Server Compact で実行するためのアプリケーションを開発する場合、SQL Server Compact と MicrosoftSQL Server 2008 R2 の以下の相違点に注意してください。
SQL Server Compact は、トランザクションのネストをサポートしませんが、ADO.NET の並列トランザクションをサポートしています。
SQL Server Compact では、カーソルがトランザクション内で開かれる場合、そのカーソルはそのトランザクションの範囲内に存在します。トランザクションが中止されると、カーソルは存在しなくなります。トランザクションをキャンセルした後に引き続きカーソルを使用するには、トランザクションの範囲外でカーソルを作成します。つまり、OLE DB for SQL Server Compact のコンテキストでは、レコードセットが無効になるので、レコードセットを閉じる必要があります。トランザクションがコミットされても、カーソルはそのまま存在し、十分に機能します。
SQL Server Compact は、分散トランザクションをサポートしません。
SQL Server Compact は、セーブ ポイントをサポートしません。ポイントの保存により、アプリケーションは、軽度のエラーが発生した場合にトランザクションの一部をロールバックすることができます。アプリケーションは、トランザクションの完了時に、トランザクション全体をコミットまたはロールバックする必要があります。
このセクションの内容
トピック |
説明 |
---|---|
トランザクションの開始時と終了時のアプリケーションの制御方法について説明します。 |
|
SQL Server Compact がサポートする 2 種類のトランザクション (明示的なトランザクションと自動コミット トランザクション) について説明します。 |
|
TransactionScope クラスの実装および制限について説明します。 |