Symfoware Server アプリケーション開発ガイド(埋込みSQL編) - FUJITSU -
目次 索引 前ページ次ページ

第2章 アプリケーションの設計> 2.4 トランザクションと排他制御> 2.4.2 トランザクション制御の方法

2.4.2.1 トランザクションの終了方法

トランザクションの終了方法には、以下の3つの方法があります。

■COMMIT文によるトランザクションの終

COMMIT文は、トランザクションの区切りを指定するSQL文です。COMMIT文により行われる処理は、以下のとおりです。

前に実行したCOMMIT文またはROLLBACK文以後、当該COMMIT文までに行ったデータベースの処理をデータベースに反映します。次に、現在のトランザクションを終了します。一度もCOMMIT文またはROLLBACK文を実行していない場合は、アプリケーションの実行開始から当該COMMIT文までのデータベースの処理をデータベースに反映します。

COMMIT文の形式を以下に示します。

COMMIT WORK

COMMIT文によるデータベース更新の例を以下に示します。

[図:COMMIT文によるデータベース更新の例]

■ROLLBACK文によるトランザクションの終

ROLLBACK文は、トランザクション内で行ったデータベースの処理を取り消すためのSQL文です。ROLLBACK文により行われる処理を以下に示します。

前に実行したCOMMIT文またはROLLBACK文実行以後、当該ROLLBACK文までに行ったデータベースの処理を取り消します。そして、現在のトランザクションを終了します。一度もCOMMIT文またはROLLBACK文を実行していない場合は、アプリケーションの実行開始から当該ROLLBACK文までのデータベースの処理を取り消します。

ROLLBACK文の形式を以下に示します。

ROLLBACK WORK

ROLLBACK文によるトランザクション取消しの例を以下に示します。

[図:ROLLBACK文によるトランザクション取消しの例]

■アプリケーションの終了によるトランザクションの終

アプリケーションがトランザクション開始状態のままCOMMIT文もROLLBACK文も実行せずに終了する場合には、Symfoware/RDBがトランザクションをロールバックします。

トランザクションが開始状態のままアプリケーションが終了する例を以下に示します。

[図:トランザクション開始状態でのアプリケーションの終了の例]


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007-2008