無料スクリプト配布のPHP.TO   PHPの実用的なtips PHPマニュアル MySQLマニュアル Apacheマニュアル PostgreSQLマニュアル マニュアル検索    

RELEASE SAVEPOINT

名前

RELEASE SAVEPOINT -- 設定済みのセーブポイントを破棄する

概要

RELEASE [ SAVEPOINT ] 

savepoint_name

説明

RELEASE SAVEPOINT は、現在のトランザクションで事前に設定されていたセーブポイントを破棄します。

セーブポイントを破棄すると、ロールバックするポイントとして使用できなくなります。 他にユーザの目に付くような動作はありません。 このコマンドは、セーブポイントの設定後に実行されたコマンドの効果を取り消すわけではありません (これを行う方法は ROLLBACK TO SAVEPOINT を参照してください)。 不要になったセーブポイントを破棄することにより、システムがトランザクションの終了前に多少のリソースを回収することができます。

また、 RELEASE SAVEPOINT が実行されると、指定したセーブポイントの後に設定されたセーブポイントは全て破棄されます。

パラメータ

savepoint_name

破棄するセーブポイントの名前です。

注釈

設定されていないセーブポイント名を指定するとエラーになります。

トランザクションがアボート状態の時には、セーブポイントを解放することはできません。

同じ名前のセーブポイントが複数存在する場合、最後に設定されたセーブポイントが解放されます。

セーブポイントを設定し、その後、破棄します。

BEGIN;
    INSERT INTO table1 VALUES (3);
    SAVEPOINT my_savepoint;
    INSERT INTO table1 VALUES (4);
    RELEASE SAVEPOINT my_savepoint;
COMMIT;

上記のトランザクションでは、3と4の両方が挿入されます。

互換性

このコマンドは標準 SQL に準拠しています。 SQL:2003標準では、 SAVEPOINT は必須であると規定されています。 PostgreSQL では SAVEPOINT キーワードを省略することができます。

関連項目

BEGIN , COMMIT , ROLLBACK , ROLLBACK TO SAVEPOINT , SAVEPOINT

powered by SEO.CUG.NET