ページの先頭行へ戻る
Symfoware Server V11.1.0 RDB運用ガイド
FUJITSU Software

4.6.1 DSIのデータをそのまま外部ファイルに出力する

rdbunlコマンドを使用して、データベースのデータを外部ファイルへ出力することができます。

参照

rdbunlコマンドの指定方法の詳細については、“コマンドリファレンス”を参照してください。

データを1つのファイルに出力する

すべてのデータを1つの外部ファイルに出力する場合の機能概要と指定例を以下に示します。

$ rdbunl -i 在庫管理DB.在庫表DSI /home/rdb1/stockdsi1.data
                                                 (1)

(1) 出力ファイル名

出力ファイル名

データベースの出力先の外部ファイル名を指定します。

注意

格納データを暗号化している場合でも、出力したファイルは暗号化されません。
外部ファイルが不要となった際には、rdbclrfコマンドまたはOSのコマンドで削除してください。
rdbclrfコマンドは、Symfoware Server Enterprise Extended Editionかつ標準セキュリティ運用の場合に使用可能です。それ以外の場合は、下記のOSのコマンドを使用して削除してください。

shredコマンドを実行して、出力ファイルを削除します。

$ shred -x -u /home/rdb1/stockdsi1.data

任意の列のデータを出力する

任意の列を選択し、この列で構成するデータを外部ファイルに出力する場合の機能概要と指定例を以下に示します。

$ rdbunl -i 在庫管理DB.在庫表DSI -c 倉庫番号,製品名
                                               (1)
         /home/rdb1/stockdsi2.data

(1) 列指定

列指定

表を構成する列のうち、任意の列を選択し、この列で構成するデータを外部ファイルに出力する場合に指定します。ただし、対象DSIがOBJECT構造の場合は、列指定を指定することはできません。

データを任意のデータ件数ごとに分割して複数のファイルに出力する

任意のデータ件数ごとに分割して複数のファイルに出力する場合の機能概要と指定例を以下に示します。

$ rdbunl -i 在庫管理DB.在庫表DSI -v /home/rdb1/part.data
                                                (1)

(1) 分割指定ファイル名

分割指定ファイル名

任意の行数単位にデータを別々のファイルに分割して出力する場合に指定します。ファイルには、分割するデータの行数と、分割したデータの出力先のファイル名を記述します。

ある条件で絞り込んだデータのみを出力する

ある条件で絞り込んだデータのみを外部ファイルに出力する場合の機能概要と指定例を以下に示します。

$ rdbunl -i 在庫管理DB.在庫表DSI -f /home/rdb1/term.data
                                                 (1)

(1) 条件指定ファイル名

条件指定ファイル名

ある条件で絞り込んだデータのみを外部ファイルに出力する場合に指定します。ファイルには、データを抽出するための条件と、抽出したデータの出力先のファイル名を記述します。

外部ファイルのデータ形式

rdbunlコマンドが出力する外部ファイルのデータ形式には、以下の2種類があります。

参照

データ形式の詳細は、“4.1.1 外部ファイルの形式”を参照してください。

バイナリ形式でデータベースのデータを外部ファイルに出力した場合の例を以下に示します。

NULL値

データベースの出力対象データ中にNULL値が存在した場合の処理は、nオプションの指定により異なります。

nオプション省略時:

NULL値を含む行を出力対象とします。このときには、データベースの各列に対応する各出力データの先頭にNULL表示域(2バイト)が常に追加されます。

nオプション指定時:

NULL表示域は出力されません。したがって、NULL値を含む行は出力されません。

例1

NULL値を含む行を出力する場合の、外部ファイルのデータ形式例

例2

NULL値を含む行を出力しない場合の、外部ファイルのデータ形式例

可変長文字列

可変長文字列属性の列に対しては、データの有効長を示す2バイトの領域がデータの前に追加されて出力されます。データの有効長を示す領域には、データの有効長が2進数で格納されています。

列データの出力域は、oオプションの指定により異なります。

oオプション省略時:

データの有効長を示す領域と、可変長属性の定義で指定した長さ(最大長)分の領域です。有効長が最大長未満の場合は、データの有効な部分以降の内容は不定です。

oオプション指定時:

データの有効長を示す領域と、有効長分の領域です。

データの有効長を示す領域と最大長分の領域を出力した場合の、外部ファイルのデータ形式