8.10.2 オプションと制御文の関係

<この項の構成>
(1) UOCを利用した再編成で指定するオプション及び制御文
(2) UOCを利用した再編成でのオプション指定規則
(3) UOCを利用した再編成での制御文指定規則
(4) UOCを呼び出すサーバとホストの関係
(5) UOCに渡すデータとpdrorgのデータ変換契機

(1) UOCを利用した再編成で指定するオプション及び制御文

UOCを利用した再編成で指定するオプション及び制御文を次の表に示します。

表8-27 UOCを利用した再編成で指定するオプション及び制御文

種別オプション制御文ファイルへの出力
-k-Wunload文unlduoc文pdrorgUOC
不要データの削除※1表の再編成rorg×※3出力します。任意です。
表のアンロード+リロードアンロードunld※3出力します。任意です。
リロードreld※3
アプリケーション向けデータ更新※2pdrorgがファイルを出力unld※3出力します。任意です。
UOCがファイルを出力unld×※4該当しません。必要です。
(凡例)
○:指定してください。
×:指定できません(エラーとなります)。
-:指定しても無視されます。
注※1
表に抽象データ型の列がある場合,unld_func文にコンストラクタパラメタ逆生成関数を指定した抽象データ型の列だけ,UOCにデータが渡ります。unld_func文の指定がない抽象データ型の列については,ナル値のデータが渡ります。この場合,UOCにはナル値を渡しますが,アンロードデータファイルには検索したデータを格納します。したがって,UOCでのデータ要否判定はできません。
注※2
表に抽象データ型の列がある場合,すべての抽象データ型の列に対してunld_func文を指定してください。指定しないとエラーになります。
注※3
unload文にアンロードデータファイル名を指定します。
注※4
unload文に(uoc)を指定します。

(2) UOCを利用した再編成でのオプション指定規則

UOCを利用した再編成でのオプション指定規則を次に示します。

  1. UOCを利用した再編成は,表の再編成(-k rorg),又は表のアンロード(-k unld)のときに実行できます。
  2. 表に長大データ型の列,又は長大データ属性を持つ抽象データ型の列がある場合,-jオプションを指定する必要があります。-jオプションを指定しないとエラーになります。
  3. -cオプションに,dic(処理対象がディクショナリ表)は指定できません。指定するとエラーになります。
  4. unload文に(uoc)を指定した場合,-Wオプションは指定できません。指定するとエラーになります。
  5. unload文に(uoc)を指定した場合,-fオプションを指定するとエラーになります。

(3) UOCを利用した再編成での制御文指定規則

UOCを利用した再編成での制御文指定規則を次に示します。

  1. UOCを利用した再編成では,次の二つの制御文を必ず指定する必要があります。
    • unlduoc文
    • unload文
  2. lobunld文は指定できません。

(4) UOCを呼び出すサーバとホストの関係

UOCを呼び出すサーバとホストの関係を次の表に示します。UOCを格納している共用ライブラリを,次の表の該当するホストに用意してください。

表8-28 UOCを呼び出すサーバとホストの関係

実行環境サーバホスト
HiRDB/シングルサーバ-gなしシングルサーバシングルサーバがあるホスト
-gありユティリティサーバ(pdrorgm)unload文で指定したホスト
HiRDB/パラレルサーバ-gなし表単位非分割表バックエンドサーバ表が格納されているサーバがあるホスト
分割表unload文で指定したサーバがあるすべてのホスト
RDエリア単位指定したRDエリアを持つサーバがあるホスト
-gありユティリティサーバ(pdrorgm)unload文で指定したホスト

(5) UOCに渡すデータとpdrorgのデータ変換契機

pdrorgには,オプション及び制御文の指定でデータ変換をする機能があります。UOCを利用した再編成でも,この機能を使用できます。なお,データ変換は,UOCに変換しないデータを渡して,アンロードデータファイル出力前にデータの変換をします。UOCに渡すデータとpdrorgのデータ変換契機を次の表に示します。

表8-29 UOCに渡すデータとpdrorgのデータ変換契機

種別データ変換ができるオプション又は制御文UOCに渡すデータデータ変換契機
不要データの削除(表の再編成)-S空白を取り除いていないデータアンロードデータファイル出力時
-W
-W dat,sup又は
-W extdat,sup
option文のspacelvl空白変換していないデータ表のリロード時
blobtovarchar文
不要データの削除(表のアンロード+リロード)-S空白を取り除いていないデータアンロードデータファイル出力時
-W
-W dat,sup又は
-W extdat,sup
option文のspacelvl空白変換していないデータ表のリロード時
blobtovarchar文
アプリケーション向けデータ更新(pdrorgがファイルを出力)-S
-WDAT形式又はバイナリ形式に変換する前のデータアンロードデータファイル出力時
-W dat,sup又は
-W extdat,sup
空白を取り除いていないデータアンロードデータファイル出力時
option文のspacelvl空白変換していないデータアンロードデータファイル出力時
blobtovarchar文BLOB形式のデータアンロードデータファイル出力時
アプリケーション向けデータ更新(UOCがファイルを出力)-S空白を取り除いていないデータ
-W
-W dat,sup又は
-W extdat,sup
option文のspacelvl空白変換していないデータ
blobtovarchar文
文字コード変換option文のcharset指定した文字コードに変換したデータアンロードデータ取得時(UOCコール前)
(凡例)-:該当しません。
表定義時にSUPPRESS指定のDECIMAL型の列がある場合,UOCには拡張後のデータを渡します。また,データ変換契機はリロード時となります。
注※
UOCの編集後のデータに対して,データ変換をします。