トランザクションのコミット

トランザクションをコミットすると、そのトランザクションの変更を確定して、セーブポイントを消去しロックを解除します。

トランザクションを明示的にコミットするには、COMMIT文または(SQL Developer環境で)「変更のコミット」アイコンを使用します。

ノート: Oracle Databaseは、データ定義言語(DDL)文の前後に暗黙的なCOMMIT文を発行します。DDL文の詳細は、「データ定義言語(DDL)文」を参照してください。

コミット前のトランザクションは次のようになります。

コミット後のトランザクションは、次のようになります。

例3-7では、REGIONS表に1行追加し(単純なトランザクション)、結果を確認してから、トランザクションをコミットします。

例3-7 トランザクションのコミット

トランザクション前:

SELECT * FROM REGIONS
ORDER BY REGION_ID;

結果:

REGION_ID REGION_NAME
---------- -------------------------
         1 Europe
         2 Americas
         3 Asia
         4 Middle East and Africa

4 rows selected.

トランザクション(表に行を追加)を実行します。

INSERT INTO regions (region_id, region_name) VALUES (5, 'Africa');

結果:

1 row created.

追加した行を確認します。

SELECT * FROM REGIONS
ORDER BY REGION_ID;

結果:

REGION_ID REGION_NAME
---------- -------------------------
         1 Europe
         2 Americas
         3 Asia
         4 Middle East and Africa
         5 Africa

5 rows selected.

トランザクションをコミットします。

COMMIT;

結果:

Commit complete.

関連項目: COMMIT文の詳細は、『Oracle Database SQL言語リファレンス』を参照してください。