SAVEPOINT - セーブポイントを作成する -

SQL-92/99   Oracle DB2 SQL Server MySQL PostgreSQL Access

Oracle, MySQL

SAVEPOINT セーブポイント名


DB2

SAVEPOINT セーブポイント名 ON ROLLBACK RETAIN CURSORS

関連キーワード

 SAVEPOINT 文は、トランザクション処理中のロールバックポイントを作成するときに使用します。 なお、Oracle / MySQL では複数のセーブポイントを作成できますが、DB2 では複数のセーブポイントを作成することはできません。

-- 【説明】
-- 次の SQL 文は、「T_01_1」表の「ID」列が「100102」に一致するデータの「L_NAME」列を「山田」に更新後、セーブポイントを作成します。

UPDATE T_01_1
 SET L_NAME = '山田'
 WHERE ID = '100102';

-- Oracle, MySQL
SAVEPOINT SP1;
-- DB2
SAVEPOINT SP1 ON ROLLBACK RETAIN CURSORS;

INSERT INTO T_01_1
 VALUES ('200101', '小林', '健二', '1');

ROLLBACK TO SAVEPOINT SP1;

COMMIT;


SELECT * FROM T_01_1;


IDL_NAMEF_NAMESEX
100101山田晴男1
100102山田2
100103鈴木二郎1
100104田中栄吉1
100105木村1

参考表

T_01_1

IDL_NAMEF_NAMESEX
100101山田晴男1
100102佐藤2
100103鈴木二郎1
100104田中栄吉1
100105木村1