Hitachi

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


12.15.2 制限事項

改竄防止表はデータの更新及び削除ができない表のため,改竄防止表又は改竄防止表格納RDエリアに対して,SQL文,ユティリティ,及びコマンドの実行に制限があります。

〈この項の構成〉

(1) 定義系SQL

改竄防止表に対して実行できない定義系SQL文があります。制限がある定義系SQL文と制限事項を次の表に示します。

表12‒5 制限がある定義系SQL文と制限事項

SQL文

制限事項

CREATE TABLE

すべての列に更新可能列属性を指定し,かつ改竄防止オプションを指定することはできません。

ALTER TABLE

  • 表名称,及び列名称は変更できません。

  • データが存在する表に改竄防止機能は適用できません。既存の表に改竄防止機能を適用する手順については,「非改竄防止表から改竄防止表への変更」を参照してください。

  • 改竄防止機能の解除はできません。

  • 既存の列を更新可能列に変更したり,更新可能列を通常の列に変更したりすることはできません。

  • 更新可能列は,改竄防止機能を適用する前に定義しておく必要があります

  • 行削除禁止期間の設定,解除,及び期間の変更はできません。

  • 行削除禁止期間が指定されている改竄防止表の場合,行削除禁止期間を指定した挿入履歴保持列は削除できません。

  • 分割格納条件は変更できません。

DROP TABLE

改竄防止表にデータがある場合,実行できません。

注※

既存の表に更新可能列を指定して,改竄防止機能を適用するためには,列及び表に対してそれぞれALTER TABLEを実行する必要があります。次の手順で改竄防止機能を適用してください。

  1. ALTER TABLEで,更新可能とする列の属性を更新可能列に変更

  2. ALTER TABLE(CHANGE INSERT ONLY)で,改竄防止表にする表に対して改竄防止機能を適用

(2) ユティリティ

改竄防止表,又は改竄防止表格納RDエリアに対して,ユティリティ運用が制限されます。制限されるユティリティと制限事項を次の表に示します。記載されていないユティリティについては,特に制限はありません。

表12‒6 運用時に制限があるユティリティと制限事項

ユティリティ名

制限事項

データベース作成ユティリティ(pdload)

  • 作成モード(-dオプション指定)は使用できません。

  • 対象となる表がデータ未完状態の場合は実行できません。

データベース構成変更ユティリティ(pdmod)

  • 改竄防止表格納RDエリアの再初期化(initialize rdarea)は実行できません。

データベース再編成ユティリティ(pdrorg)

表の再編成(-k rorg)

  • 処理対象となる表格納RDエリアがコマンド閉塞となっていない場合は実行できません。

  • UOCを利用した再編成(unlduoc文)はできません。

  • 同期点指定の再編成(option job文)はできません。

  • 対象となる表がデータ未完状態の場合は実行できません。

表のアンロード(-k unld)

  • -Wオプションを指定しない場合は実行できません。

表のリロード(-k reld)

  • 処理対象となる表格納RDエリアがコマンド閉塞となっていない場合は実行できません。

  • 対象となる表がデータ未完状態となっている場合に実行できます(表の再編成で,表のリロードが異常終了した場合での再実行だけ実行できます)。

  • 同期点指定の再編成(option job文)はできません。

  • 別表へのリロードは実行できません。詳細は図「別表へのリロード可否」を参照してください。

インデクスの一括作成(-k ixmk),再作成(-k ixrc),再編成(-k ixor)

対象となる表がデータ未完状態の場合は実行できません。

リバランスユティリティ(pdrbal)

対象となる表がデータ未完状態の場合は実行できません。

注※

改竄防止表に対して表の再編成を実行し,エラーなどによって表のリロードが完了していない表の状態をデータ未完状態といい,改竄防止表格納RDエリアごとに状態を保持します。該当するRDエリアがデータ未完状態かどうかは,データベース状態解析ユティリティで,RDエリア単位の状態解析(論理的解析)又は表単位の状態解析を実行することで確認できます。データ未完状態は表の再編成(表のリロード)が正常に完了した場合に解除されます。データ未完状態の解除方法の詳細は,マニュアル「HiRDB Version 9 コマンドリファレンス」を参照してください。

図12‒24 別表へのリロード可否

[図データ]

〔説明〕
  1. 改竄防止表T1から非改竄防止表T3へのリロードは,改竄防止表T1の改竄にはならないため,できます。

  2. 非改竄防止表T3から改竄防止表T1へのリロードは,改竄防止表T1のデータが改竄されることになるため,できません。

  3. 改竄防止表T1から改竄防止表T2へのリロードは,改竄防止表T2のデータが改竄されることになるため,できません。

  4. 改竄防止表T1自身に対するリロードは,改竄防止表T1の改竄にはならないため,できます。

  5. HiRDBシステム1の改竄防止表T1からHiRDBシステム2の改竄防止表T1へのリロードは,HiRDBシステム2の改竄防止表T1のデータが改竄されることになるため,できません。

(3) 運用コマンド

改竄防止表,又は改竄防止表格納RDエリアに対して,コマンド実行が制限されます。制限事項がある運用コマンドを次の表に示します。

表12‒7 制限がある運用コマンドと制限事項

運用コマンド

制限事項

RDエリアの閉塞(pdhold)

データ未完状態の改竄防止表格納RDエリアの場合,状態を遷移させると表の再編成を完了させるためのリロード実行が不可となるため次のオプションは実行できません。

  • 参照可能閉塞:-i

  • バックアップ閉塞:-b

RDエリアの閉塞解除(pdrels)

データ未完状態の改竄防止表格納RDエリアの場合,表の再編成が未完了のままで閉塞解除すると該当表のデータが0件の状態となるため,実行できません。

(4) 関連製品での制限事項

関連製品での制限事項を次に示します。