SYSCS_UTIL.SYSCS_EXPORT_TABLE_LOBS_TO_EXTFILEシステム手続きをつかって、表の全情報をエクスポートできます。このときLOBの情報は別ファイルにエクスポートして書かれます。LOBが書かれた場所への参照は、主となるエクスポートファイルのLOB列にあります。
セキュリティへの配慮や意図しないファイルの破壊を避ける理由で、この手続きは既存のファイルへのエクスポートは行いません。手続きのファイル名には存在しないファイル名を指定する必要があります。手続きを実行するとファイルが作成され、そのファイルへ情報がエクスポートされます。
情報はデリミトされたファイル書式によりエクスポートされます。
構文
SYSCS_UTIL.SYSCS_EXPORT_TABLE_LOBS_TO_EXTFILE (
IN SCHEMANAME VARCHAR(128),
IN TABLENAME VARCHAR(128),
IN FILENAME VARCHAR(32672),
IN COLUMNDELIMITER CHAR(1),
IN CHARACTERDELIMITER CHAR(1),
IN CODESET VARCHAR(128)
IN LOBSFILENAME VARCHAR(32672)
)
この手続きを実行すると、列の情報は主となるエクスポートファイルにデリミトされたデータファイルの書式で書かれます。
- SCHEMANAME
- 表のスキーマを指定します。既定のスキーマ名を利用するため、NULLを指定することもできます。SCHEMANAMEパラメータには、VARCHAR (128)データ型の引数を入力として与えます。
- TABLENAME
- 情報をエクスポートする表やビューの名前を指定します。この表はシステム表や一時表であってはなりません。文字列は表名と大文字小文字が一致していなければなりません。TABLENAMEパラメータには、VARCHAR (128)型の引数を入力に与えます。
- FILENAME
-
情報がエクスポートされる新規ファイルの名前を指定します。もしパスが省略されている場合、現在のディレクトリが使われます。もし既存ファイルの名前が指定された場合、エクスポート手続きはエラーを返します。
ネットワークサーバを利用している場合、指定するファイルの位置はサーバサイドでの位置です。NULLの値を指定するとエラーとなります。FILENAMEパラメータには、VARCHAR (32672)データ型の引数を入力に与えます。
- COLUMNDELIMITER
- 列のデリミタを指定します。指定された文字は列の終了を表すために、コンマに代わって使われます。既定値のコンマを使う場合、NULLを指定することができます。
COLUMNDELIMITERパラメータはCHAR (1)データ型でなければなりません。
- CHARACTERDELIMITER
- 文字のデリミタを指定します。指定された文字は文字列を囲うために、二重引用符に代わって使われます。既定値の二重引用符を使う場合、NULLを指定することができます。
CHARACTERDELIMITERパラメータには、CHAR (1)データ型の引数を入力に与えます。
- CODESET
- エクスポートファイルの情報のコードセットを指定します。コードセットの名前はJavaにて利用可能な文字エンコードでなければなりません。ファイルに情報が書き出される前に、データベースのコードページから指定されたコードページへの情報の変換がおこなわれます。プログラムを実行しているJVMのコードページで情報を書き出す場合、NULLを指定することができます。CODESETパラメータには、VARCHAR (128)データ型の引数を入力に与えます。
- LOBSFILENAME
- ラージオブジェクトの情報が書き出されるファイルを指定します。もしパスが省略された場合、LOBファイルは主となるエクスポートファイルと同じディレクトリに作成されます。もし既存ファイルの名前が指定された場合、エクスポートユーティリティはファイルの内容を上書きします。情報がファイルに追加されることはありません。
ネットワークサーバを利用する場合、ファイルはサーバサイドでの位置である必要があります。
NULLを引数に与えるとエラーとなります。
LOBSFILENAMEパラメータは、VARCHAR (32672)データ型の引数を入力に与えます。
スキーマ、表、列名がデリミトされない識別子で作成されていた場合、エクスポートの手続きに渡す名前は全文字が大文字からなっている必要があります。
スキーマ、表、列名がデリミトされた識別子で作成されていた場合、エクスポートの手続きに渡す名前は作成した時の名前と大文字小文字が一致していなければなりません。
使い方
この手続きの使い方について追加の情報が、Derby ツールとユーティリティーガイドの「バルクインポートとエクスポートの手続きを使う」にあります。
表の全情報をLOBの情報を別ファイルに分けてエクスポートする例
以下の例にて、サンプルデータベースにあるSTAFF表から、staff.delという主ファイルとpictures.datというLOBエクスポートファイルに、情報をエクスポートする方法を示します。
CALL SYSCS_UTIL.SYSCS_EXPORT_TABLE_LOBS_TO_EXTFILE(
'APP', 'STAFF', 'c:\data\staff.del', ',' ,'"',
'UTF-8', 'c:\data\pictures.dat');