CDaoWorkspace::Rollback
現在のトランザクションを終了し、ワークスペースのすべてのデータベースを、トランザクションが開始される前の状態に戻します。
void Rollback( );
解説
ヒント
1 つのワークスペース オブジェクト内では、トランザクションはワークスペースに対して常にグローバルであり、1 つのデータベースやレコードセットに限定されることはありません。 ワークスペース トランザクション内で複数のデータベースまたはレコードセットに対する操作を実行すると、Rollback は、そのすべてのデータベースまたはレコードセットに対するすべての操作を元に戻します。
保留状態のトランザクションを保存またはロールバックせずにワークスペースを閉じると、トランザクションは自動的にロールバックされます。 最初に BeginTrans を呼び出さずに、CommitTrans または Rollback を呼び出すと、エラーが発生します。
注意
トランザクションを開始すると、データベース エンジンは、ワークステーションの環境変数 TEMP で指定されるディレクトリに置かれるファイルに、その操作を記録します。 トランザクション ログ ファイルが TEMP ドライブの利用できるストレージを使い果たすと、データベース エンジンは MFC に CDaoException (DAO エラー 2004) をスローさせます。 この時点で、CommitTrans を呼び出すと、いくつかの操作がコミットされますがその数は不定です。コミットされなかった残りの操作は失われ、その後操作が再開されます。 Rollback を呼び出すと、トランザクション ログは解放され、トランザクションのすべての操作はロールバックされます。
必要条件
**ヘッダー:**afxdao.h