次の方法で共有


CDaoWorkspace::Rollback

トランザクションの開始前に現在のトランザクションが終了状態に、ワークスペース内のすべてのデータベースを復元するには、このメンバー関数を呼び出します。

void Rollback( );

解説

Caution メモ注意

1 個のワークスペース オブジェクト内では、トランザクションはワークスペースにグローバルで、常に 1 のデータベースまたはレコードセットだけに限定されません。ワークスペースのトランザクション内の複数のデータベースまたはレコードセットの操作を実行すると、[ロールバック] は、すべてのデータベースとレコードセットのすべての操作を復元します。

保留中のトランザクションを保存または転がさないでワークスペースのオブジェクトを閉じると、トランザクションが自動的にロールバックされます。最初の呼び出し BeginTransなしで CommitTrans[ロールバック] を呼び出すと、エラーが発生します。

[!メモ]

トランザクションを開始すると、ファイルの操作がディレクトリに保ったデータベース エンジン レコードは、ワークステーションに TEMP 環境変数で指定されています。トランザクション ログ ファイルが、TEMP ドライブの使用可能なストレージの不足すると、データベース エンジンにより CDaoException は、MFC DAO (2004) のエラーをスローします。この時点で CommitTransを呼び出すと、その操作の中間数が確定されますが、割り当てられていない残りの完結操作が失われ、操作が再起動する必要があります。[ロールバック] を呼び出して、トランザクション ログを解放し、トランザクションのすべての操作がロールバックされます。

必要条件

Header: afxdao.h

参照

関連項目

CDaoWorkspace クラス

階層図

CDaoRecordset クラス