ROLLBACK

現在の接続で現行のトランザクションが行ったデータベースへの変更を取り消すか、事前に設定した保存ポイントまで変更を部分的にロールバックします。

構文:

>>---EXEC SQL---.------------.--->
                +-AT db_name-+

 >--ROLLBACK----.--------------.--------->
                +-WORK---------+
                +-TRAN---------+  
                +-TRANSACTION--+

 >---.-----------.---END-EXEC---><  
     +--RELEASE--+
     +--TO-.-----------.-name--+
           +-SAVEPOINT-+

パラメーター:

AT db_name DECLARE DATABASE を使用して宣言されたデータベースの名前。この句は省略可能です。省略すると、現在の接続をロールバックします。この句を指定して、指定された接続が現在の接続と異なる場合は、DECLARE CURSOR 文に関連付けられた接続でロールバックが実行されます。

説明:

RELEASE を指定し、トランザクションが正常にロールバックした場合は、現在の接続が切断されます。

TO [SAVEPOINT] は、name で指定した保存ポイントにトランザクションをロールバックします。この保存ポイントは、先行する SAVEPOINT 文で設定する必要があります。

例:

EXEC SQL
   ROLLBACK
END-EXEC

EXEC SQL
    ROLLBACK WORK RELEASE
END-EXEC

END-EXEC

EXEC SQL
    ROLLBACK TO SP1
END-EXEC