ページの先頭行へ戻る
Symfoware Server V10.0.0 コマンドリファレンス

2.62 rdbunlsql

名前

rdbunlsql -- SQL文による検索結果のファイルへの出力

形式

rdbunlsql -d データベース名
          { -v SQL文記述ファイル 
            | -s 問合せ式 [ORDER BY句] [更新可能性句] [並列指定] [実行オプション指定] }
          [ -n ]
          [ { -t | -o } ]
          [ -j { EUC_S90 | SJIS |  UNICODE } ]
          [ -U NCHAR=UCS2B ]
          出力ファイル名

機能説明

オプション

-d データベース名

データを取り出すデータベースの名前を指定します。

-v SQL文記述ファイル

問合せ式、ORDER BY句、更新可能性句、並列指定および実行オプション指定を記述したファイルを絶対パス名で指定します。
ファイル名に指定できる長さは、256バイトまでです。
問合せ式、ORDER BY句、更新可能性句、並列指定および実行オプション指定の詳細については、“SQLリファレンス”を参照してください。

-s 問合せ式 [ORDER BY句] [更新可能性句] [並列指定] [実行オプション指定]

問合せ式、ORDER BY句、更新可能性句、並列指定および実行オプション指定を、オプションで指定します。
問合せ式、ORDER BY句、更新可能性句、並列指定および実行オプション指定の詳細については、“SQLリファレンス”を参照してください。
なお、一般的に問合せ式、ORDER BY句、更新可能性句、並列指定および実行オプション指定の記述中では空白を含むため、二重引用符(")で囲むなど、1つのオプションとなるように指定してください。
また、シェルで特別な意味を持つ文字を含む場合にも、シェルの規則に従って通常の文字として扱われるように指定してください。

-n
[バイナリ形式で出力する場合]

すべてのカラムの先頭に、NULL表示用の領域を付加しないで出力します。
この場合、データにNULL値を含む行は出力されません。
本オプションを省略した場合は、すべてのカラムの先頭にNULL表示用の領域を付加します。
この場合、データにNULL値を含む行は出力の対象となります。

[テキスト形式で出力する場合]

データにNULL値を含む行を出力しない場合に指定します。
本オプションを省略した場合は、データにNULL値を含む行は出力の対象となります。

-t

出力ファイルのデータをテキスト形式で出力する場合に指定します。
本オプションを省略した場合は、バイナリ形式で出力します。

-o

出力ファイルのデータを可変長バイナリ形式で有効長だけを出力する場合に指定します。
本オプションを省略した場合は、可変長列の定義長分が出力されます。

-j { EUC_S90 | SJIS | UNICODE }

出力データのコード系を指定します。
出力データのコード系は、以下のものが指定できます。
EUC_S90 : EUCコードのS90コード
SJIS : シフトJISコード
UNICODE : UTF8
本オプションを省略した場合は、処理対象のデータベースのコード系が指定されたものとみなします。
なお、本オプションは、出力ファイルのデータがテキスト形式の場合にのみ指定できます。

-U NCHAR=UCS2B

各国語文字列型のコードをUCS2のバイトスワップ形式(リトルエンディアン)で出力したい場合に指定します。
なお、本オプションは、対象データベースのコード系がUNICODEかつ出力データがバイナリ形式の場合のみ指定できます。

出力ファイル名

データを出力するファイルの、ファイル名を絶対パス名で指定します。ファイル名に指定できる長さは、256バイトまでです。
なお、出力ファイルの形式の詳細については、“RDB運用ガイド”の外部ファイルの形式を参照してください。

使用例

例1

在庫管理DBに属する在庫表の検索結果をc:\rdb\data上のファイル名unlsql1.datにバイナリ形式で出力します。
各国語文字列型のデータをUCS2のバイトスワップ形式(リトルエンディアン)で出力します。

rdbunlsql -d 在庫管理DB -v c:\rdb\data\select.dat
          -U NCHAR=UCS2B
          c:\rdb\data\unlsql1.dat
SQL文記述ファイル(select.dat)の例
SELECT 製品名,SUM(在庫数量)
FROM     在庫管理DB.在庫表
WHERE    製品番号 < 350
GROUP BY 製品名
HAVING   MAX(在庫数量) <100
例2

在庫管理DBに属するT1とT2の検索結果をc:\rdb\data上のファイル名unlsql2.txtにテキスト形式で出力します。

rdbunlsql -d 在庫管理DB
          -s "SELECT * FROM S.T1,S.T2 WHERE T1.KEY=T2.KEY"
          -t c:\rdb\data\unlsql2.txt

終了ステータス

以下の終了ステータスが返されます。

0 : 正常終了
0以外 : 異常終了

注意