Hitachi

ノンストップデータベース HiRDB Version 9 システム導入・設計ガイド(Windows(R)用)


12.14.1 WITHOUT ROLLBACKオプションの効果と適用基準

WITHOUT ROLLBACKオプションとは,表に対しての更新処理(追加,削除を含む)の完了を契機に,その更新行に対する排他が解除され,それ以降はロールバックされなくなるオプションのことです。

〈この項の構成〉

(1) WITHOUT ROLLBACKオプションを指定したときの効果

表にWITHOUT ROLLBACKオプションを指定したときの効果を次に示します。

性能の向上

更新処理完了時に排他が解除されるので,排他待ちの発生を削減できます。

(2) 適用基準

採番業務のような,更新処理が集中する表に適しています。

伝票番号や書類番号などの採番業務では,一つの表で番号を管理し,採番するごとにカウントアップするという方法が考えられます。しかし,この方法では処理が集中すると,COMMIT発行まで排他が解除されないため,排他待ちが多く発生することが考えられます。このような処理をする場合,その表にWITHOUT ROLLBACKオプションを指定すると,カウントアップが終了した時点で排他が解除されるため,排他待ちの発生を削減できます。採番業務の例を次の図に示します。

図12‒23 採番業務の例

[図データ]

この例では,1行で1種類の番号を管理しています。

図「採番業務の例」に示した採番管理表の定義例を次に示します。

CREATE TABLE 採番管理表 (種類 NCHAR(4),
                         採番 INT)
                    :
             WITHOUT ROLLBACK

ただし,次に示す要因で欠番が発生する可能性がありますので,欠番が発生しても問題がない業務で使用してください。

(3) 注意