ロールバック (ROLLBACK)
| 実行可能場所: すべての環境 (*ALL) スレッド・セーフ: はい |
パラメーター 例 エラー・メッセージ |
ロールバック(ROLLBACK)コマンドは,現行のトランザクションを再始動して,コマンドのプログラム発行に関連したコミットメント定義の現行のコミットメント境界として最後のコミットメント境界を再確立するために使用されます。
ROLLBACKコマンドが出される場合:
- コミットメント境界の最後の確立以降にコミットメント定義のコミットメント制御のもとにあるデータベース・ファイルおよびその他のコミットメント資源に対する変更は,ロールバックされます。そのコミットメント境界以降にデータベース・ファイルのデータに対して行われた更新,追加,または削除はロールバックまたは除去されて,元の項目がファイルに戻されます。ファイルに追加されたレコードは削除済みレコードとしてそのままとなります。ファイルは最後のコミットメント境界に位置変更されます。さらに,その他のコミットメント資源に対する変更もロールバックされます。
- コミットメント定義のコミットメント制御下でオープンされたファイルで保留されたすべてのレコード・ロックが解放されます。
- トランザクション中に資源が作成または変更された時に獲得された,オブジェクト・レベル・コミットメント制御資源のロックが解放されます。
ROLLBACKコマンドの詳細はIBM i Information Center(http://www.ibm.com/systems/i/infocenter/)の「コミットメント制御」トピック・コレクションにあります。
このコマンドには,パラメーターはありません。
| 上 |
例
ROLLBACK
このコマンドは,コマンドを出したプログラムに関連するコミットメント定義について,最後のコミットメント境界(コミット(COMMIT)コマンドまたはロールバック(ROLLBACK)コマンドが最後に出された時点)を再確立します。
| 上 |
エラー・メッセージ
*ESCAPE メッセージ
- CPF83D0
- コミットメント操作は使用できない。
- CPF835F
- コミットまたはロールバック操作が正常に実行されなかった。
- CPF8350
- コミットメントの定義が見つからない。
- CPF8359
- ロールバック操作が正常に実行されなかった。
- CPF8367
- コミットメント制御操作を実行できない。
*STATUS メッセージ
- CPF83E6
- コミットメント制御操作が進行中の再同期化とともに完了した。
| 上 |