2.77.1 pdobjconvの形式と規則
(1) 機能
HiRDBを32ビットモードから64ビットモードへ移行するときに,pdobjconvコマンドを実行します。このコマンドを実行すると,ディクショナリ中の次に示す情報が64ビットモード対応になります。このコマンドを実行しないと,64ビットモードに移行後,ビュー表,手続き,及び関数が使用できなくなります。
-
ビュー解析情報
-
手続きのSQLオブジェクト
-
関数のSQLオブジェクト
-
トリガのSQLオブジェクト
このコマンドは,32ビットモードのHiRDBから64ビットモードのHiRDBへバージョンアップするときに(pdvrupコマンド実行後に)HiRDBが自動的に起動します。したがって,通常時は実行することはほとんどありません。
(2) 実行者
DBA権限を持っているユーザが実行できます。
(3) 形式
pdobjconv
(4) オプション
なし。
(5) 規則
-
pdobjconvコマンドは,HiRDBが稼働中のときに実行できます。
-
pdobjconvコマンドは,シングルサーバ又はシステムマネジャがあるサーバマシンで実行してください。
-
pdobjconvコマンドを実行するには,システム用RDエリアがオープン状態であり,かつ閉塞解除状態である必要があります。
(6) 注意事項
-
ユーザがpdobjconvコマンドを実行した場合は,カレントディレクトリ下にSQLオブジェクト移行情報が作成されます。したがって,pdobjconvコマンドの実行者にファイルの作成権限が必要になります。
-
pdobjconvコマンドは,同時に複数実行しないでください。
-
次の条件をどちらも満たす場合,pdobjconvコマンド実行前後で,ユーザが定義したビュー表の検索結果が異なることがあります。
-
移行前に,ビュー表を次の順序で定義している。
1.ユーザが関数を定義する。
2.1.で定義した関数を指定してビュー表を定義する。
3.1.と同一のユーザが,同一名称で,かつ引数の数が一致する関数を定義する。
-
上記の条件を満たすビュー表を定義した後,pdobjconvコマンドを実行している。
-
-
pdobjconvコマンドの結果は,次のコマンド実行時のリターンコードで確認できます。
- 0:
-
pdobjconvコマンドが正常終了しました。
- 4:
-
警告レベルのエラーはありますが,pdobjconvコマンドを正常終了します。
- 8:
-
一部のSQLオブジェクトの移行に失敗しました。メッセージ又はSQLオブジェクト移行情報を参照して,エラーとなった要因を調査して取り除いてください。
又は,pdobjconvコマンド実行上のエラーが発生しました。
- 12:
-
pdobjconvコマンドが異常終了しました。メッセージ又はSQLオブジェクト移行情報を参照して,エラーとなった要因を調査して取り除いてください。
pdcancelコマンドでpdobjconvコマンドをキャンセルしたり,又はpdobjconvコマンドのプロセスで異常が発生したりすると,リターンコードが12になります。
(7) 出力形式
pdobjconvコマンドを実行すると,実行結果(SQLオブジェクト移行情報)が次に示すファイルに出力されます。
-
HiRDBが自動的にpdobjconvコマンドを起動したとき
$PDDIR/spool/pdobjconv.log
-
ユーザがpdobjconvコマンドを起動したとき
カレントディレクトリ下のpdobjconv.log
SQLオブジェクト移行情報の出力例を次に示します。
<< SQL OBJECT Converter >> [15]START TIME : YYYY/MM/DD HH:MM:SS [1]VIEW DEF COUNT : 1 [2]PROCEDURE COUNT : 12 [3]FUNCTION COUNT : 1 [4]TRIGGER COUNT : 1 [5] [6] [7] [8] *VIEW* INVALID : USER01.USER_VIEW01 KFPX21103-I... [5] [6] [7] [8] *PROCEDURE* VALID : MASTER.REGISTRY_DELETE_CONTEXT (REGISTRY_DELETE_CONTEXT) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_DELETE_KEY (REGISTRY_DELETE_KEY) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_GET_CONTEXT (REGISTRY_GET_CONTEXT) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_GET_LVALUE (REGISTRY_GET_LVALUE) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_GET_SVALUE (REGISTRY_GET_SVALUE) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_GET_VALUE_SIZE (REGISTRY_GET_VALUE_SIZE) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_NEW_CONTEXT (REGISTRY_NEW_CONTEXT) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_RESET_LVALUE (REGISTRY_RESET_LVALUE) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_RESET_SVALUE (REGISTRY_RESET_SVALUE) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_SET_LVALUE (REGISTRY_SET_LVALUE) KFPX21102-I... *PROCEDURE* VALID : MASTER.REGISTRY_SET_SVALUE (REGISTRY_SET_SVALUE) KFPX21102-I... *PROCEDURE* INVALID : USER01.USER_PROC01 (USER_PROC01) KFPX21103-I... [5] [6] [7] [8] [9] *FUNCTION* INVALID : USER01.USER_FUNC01 (FUSER_FUNC010000000028) KFPX21103-I... [5] [6] [7] [8] *TRIGGER* INVALID : USER01.(TRIG2002080112300000) ((TRIG2002080112300000)) KFPX21103-I... << RESULT REPORT >> [16]ENDED TIME : 1999/08/13 10:46:17 [10] [11] [12] [13] [14] = RESOURCE == = SUCCESS === = FAILURE === = PASS ====== = TOTAL ===== *VIEW* 1 0 0 1 *PROCEDURE* 1 0 11 12 *FUNCTION* 1 0 0 1 *TOTAL* 3 0 11 14
〔説明〕
-
ビュー表の数
-
手続きの数
-
関数の数
-
トリガの数
-
SQLオブジェクトの識別文字列
VIEW:ビュー表
PROCEDURE:手続き
FUNCTION:関数
TRIGGER:トリガ
-
SQLオブジェクトの状態
INVALID:無効
VALID:有効
-
認可識別子
-
ビュー表名,手続き名,又は関数名
-
特定名
-
SQLオブジェクトの識別文字列
VIEW:ビュー表
PROCEDURE:手続き
FUNCTION:関数
TRIGGER:トリガ
-
正常に再登録されたSQLオブジェクトの数
-
再登録に失敗したSQLオブジェクトの数
-
再登録をしなかったSQLオブジェクトの数
-
SQLオブジェクトの合計
-
pdobjconvコマンド開始時間
-
pdobjconvコマンド終了時間