12.1.3 表定義情報と表データを別々に移行する方法
まず,pddefrev(定義系SQLの生成)を使用して定義系SQLを生成します。移行先でデータベース定義ユティリティ(pddef)を使用して,生成した定義系SQLによって表・インデクスを定義します。pddefrev(定義系SQLの生成)を使用した表定義情報の移行を次の図に示します。
次に,データベース再編成ユティリティ及びデータベース作成ユティリティで,現在使用している表データをほかのHiRDBシステムに移行します。データベース再編成ユティリティ及びデータベース作成ユティリティを使用した表データの移行を次の図に示します。
(1) 移行する情報
-
表定義情報
-
実表の定義(抽象データ型を含まない表に限ります)
-
ビュー表の定義
-
インデクスの定義
-
コメント情報
-
-
表データ
(2) 移行手順
表定義情報と表データを別々にほかのHiRDBシステムに移行する手順の概略を次の図に示します。
(3) エンディアンが異なるシステムに表データを移行する場合
移行先システムでデータロードするときにエンディアン変換を行います。
ビッグエンディアンのシステムからリトルエンディアンのシステムに,バイナリデータを含む表を移行した場合の例を次の図に示します。
- 注意事項
-
移行対象の表データに含まれるバイナリデータ(LOB型,BLOB型又はBINARY型)の有無に応じて,移行元のデータを抽出するpdrorgコマンド,及び移行先でデータをロードするpdloadコマンドのオプションを次のように指定してください。
表データのバイナリデータの有無
pdrorgコマンドのオプション指定
pdloadコマンド
オプション指定
制御文ファイルでの指定
なし
-k unld -W dat
−
−
あり
-k unld -W bin
-W -b
option文のsrcendianオペランドに,移行元システムのエンディアン形式を指定します。
big:ビッグエンディアン
little:リトルエンディアン
- (凡例)
-
−:指定する必要はありません。
コマンドの実行例については,「例題4(エンディアンが異なるシステムに,バイナリデータを含む表を移行する場合)」を参照してください。pdrorgコマンド及びpdloadコマンドについては,マニュアル「HiRDB コマンドリファレンス」を参照してください。
(a) 移行元の表データにBLOB型のデータが含まれる場合
移行元のデータを抽出するpdrorgコマンド,及び移行先でデータをロードするpdloadコマンドのオプションを,移行元のHiRDBのバージョンに応じて次のように指定してください。
HiRDBのバージョン |
BLOB列の有無 |
pdrorgコマンド |
pdloadコマンドのオプション指定 |
|
---|---|---|---|---|
オプション指定 |
アンロードファイルの種類 |
|||
02-00〜02-04 |
− |
-k unld |
● |
-U |
03-00〜04-02 |
なし |
-k unld -W bin |
○ |
-W -b |
あり |
× |
× |
× |
|
04-03〜05-04 |
なし |
-k unld -W bin |
○ |
-W -b |
あり |
-k unld -j |
● |
-U |
|
05-05以降 |
なし |
-k unld -W bin |
○ |
-W -b |
あり |
-k unld -W bin -j |
○ |
-W -b |
(b) 移行元の表データに抽象データ型が含まれる場合
移行元のデータを抽出するpdrorgコマンドのオプションを,移行元のHiRDBのバージョンに応じて次のように指定してください。
移行先でデータをロードするときは,移行元で作成されたアンロードファイルの種類に応じて,pdrorg又はpdloadコマンドを使用してください。
HiRDBのバージョン |
抽象データ型の種別 |
pdrorgコマンド |
|
---|---|---|---|
オプション指定 |
アンロードファイルの種類 |
||
05-00〜05-03 |
BLOB属性 |
× |
× |
BLOB属性以外 |
× |
× |
|
05-04 |
BLOB属性 |
× |
× |
BLOB属性以外 |
-k unld |
● |
|
05-05〜05-06 |
BLOB属性 |
-k unld -j |
● |
BLOB属性以外 |
-k unld |
● |
|
06-00以降 |
BLOB属性 |
-k unld -W bin -j |
○ |
BLOB属性以外 |
-k unld -W bin |
○ |
(c) 移行元の表データに繰返し列又はBINARY列が含まれる場合
移行元のデータを抽出するpdrorgコマンド,及び移行先でデータをロードするpdloadコマンドのオプションを,次のように指定してください。
pdrorgコマンド |
pdloadコマンドのオプション指定 |
|
---|---|---|
オプション指定 |
アンロードファイルの種類 |
|
-k unld -W bin |
○ |
-W -b |
(4) 固定長文字データの定義長を拡張して表データを移行する場合
移行先システムの表定義(データ型又は列の定義長)が,移行元システムと異なっていても,移行先システムでデータロードできます。
固定長文字データの列の定義長を拡張して,移行先システムに表を移行する場合の例を次の図に示します。