次の方法で共有


CDaoWorkspace::Rollback

更新 : 2007 年 11 月

現在のトランザクションを終了し、ワークスペースのすべてのデータベースを、トランザクションが開始される前の状態に戻します。

void Rollback( );

解説

d97a5895.alert_caution(ja-jp,VS.90).gif注意 :

1 つのワークスペース オブジェクト内では、トランザクションはワークスペースに対して常にグローバルであり、1 つのデータベースやレコードセットに限定されることはありません。ワークスペース トランザクション内で複数のデータベースまたはレコードセットに対する操作を実行すると、Rollback は、そのすべてのデータベースまたはレコードセットに対するすべての操作を元に戻します。

保留状態のトランザクションを保存またはロールバックせずにワークスペースを閉じると、トランザクションは自動的にロールバックされます。最初に BeginTrans を呼び出さずに、CommitTrans または Rollback を呼び出すと、エラーが発生します。

d97a5895.alert_note(ja-jp,VS.90).gifメモ :

トランザクションを開始すると、データベース エンジンは、ワークステーションの環境変数 TEMP で指定されるディレクトリに置かれるファイルに、その操作を記録します。トランザクション ログ ファイルが TEMP ドライブの利用できるストレージを使い果たすと、データベース エンジンは MFC に CDaoException (DAO エラー 2004) をスローさせます。この時点で、CommitTrans を呼び出すと、いくつかの操作がコミットされますがその数は不定です。コミットされなかった残りの操作は失われ、その後操作が再開されます。Rollback を呼び出すと、トランザクション ログは解放され、トランザクションのすべての操作はロールバックされます。

必要条件

ヘッダー : afxdao.h

参照

参照

CDaoWorkspace クラス

階層図

CDaoRecordset クラス

その他の技術情報

CDaoWorkspace のメンバ