5.1.4 xtrepOコマンドで指定するファイルの内容
xtrepOコマンドで指定するファイルのうち,次のファイルの内容について説明します。その他のファイルについては「4.2.4 xtrepコマンドで指定するファイルの内容」を参照してください。
-
列名記述ファイル
-
表式記述ファイル
-
排他情報ファイル
-
反映情報ファイル
-
ナル値情報ファイル
(1) 列名記述ファイル
列名記述ファイルには,SELECT文での抽出列情報について指定します。
HiRDB Dataextractorでは,列名記述ファイルの指定値を用いてSELECT文を組み立て,ORACLEからデータを抽出します。
select 列名記述ファイルの指定値 FROM 抽出表名
−sオプションを省略した場合,アスタリスク(*)を仮定します。
SELECT文での選択式の指定方法については,ORACLEマニュアルを参照してください。
(2) 表式記述ファイル
表式記述ファイルには,SELECT文での条件を指定します。
HiRDB Dataextractorでは,列名記述ファイルの指定値を用いてSELECT文を組み立て,ORACLEからデータを抽出します。
select 列名記述ファイルの指定値 FROM 抽出表名 表式記述ファイルの指定値
−wオプションを省略した場合,条件は使用しません。
SELECT文での条件の指定方法については,ORACLEマニュアルを参照してください。
- 注意事項
-
-
指定値の末尾にセミコロン(;)は指定しないでください。
-
(3) 排他情報ファイル
排他情報ファイルには,データ抽出時の排他情報について指定します。
排他情報ファイルの指定内容を次に示します。
-
環境変数XTSQLが0または省略時
"LOCK TABLE 表名"以降のLOCK文を指定します。
- 形式
IN EXCLUSIVE MODE NOWAIT
-
環境変数XTSQLが1の場合
"LOCK TABLE"以降のLOCK文を指定します。
- 形式
表名 IN EXCLUSIVE MODE NOWAIT
実際に発行されるLOCK文
LOCK TABLE 表名 IN EXCLUSIVE MODE NOWAIT
LOCK文の指定方法については,ORACLEマニュアルを参照してください。
- 注意事項
-
指定値の末尾にセミコロン(;)は指定しないでください。
(4) 反映情報ファイル
反映情報ファイルには,データ型を変換する列情報とデータ型を指定します。
反映情報ファイルは,次のときに指定します。
-
抽出データをファイルにだけ格納する場合
指定したデータ型でデータを抽出します。反映情報ファイルを省略(−Lオプション省略)した場合の列,およびデータ型を指定しない列に対する仮定値を,「表5-5 省略時に仮定するデータ型」に示します。
-
次のデータ型をHiRDBのBLOB,BINARY型で抽出し,反映またはファイルに格納する場合
-
LONG
-
LONG RAW
-
BLOB
-
BFILE
-
CLOB
-
NCLOB
列単位に最大データ長を指定します。これによって,指定された長さのバッファを使用するためにバッファを節約できます。反映情報ファイルを省略(−Lオプション省略),またはデータ型を指定しない列に対するバッファサイズは環境変数XTLOBBUFSIZEに従います。
-
- 形式
FORMAT {FIELD_NUM フィールド番号|FIELD_NAME 列名}ATTR データ型 〔{FIELD_NUM フィールド番号|FIELD_NAME}ATTR データ型〕…
説明
- ●FORMAT
-
データ型を変換することを示します。
- ●FIELD_NUM
-
データ型変換の対象とする抽出列の先頭からの通番を指定します。
-
−sオプション指定なしの場合
抽出表の定義上の先頭からの通番
-
−sオプション指定ありの場合
列名記述ファイルに指定した列名の先頭からの通番
指定値範囲は1〜99,999です。また,フィールド番号は重複して指定できません。
-
- ●FIELD_NAME
-
データ型変換の対象とする抽出列名を指定します。
−sオプション指定時は指定できないので,FIELD_NUMを指定してください。
列名は重複して指定できません。
- ●ATTR
-
データ型を指定します。
指定可能なデータ型を「表5-6 ATTRに指定できるデータ型」に示します。
- 注意事項
-
-
1行に一つの列について記述してください。複数列分記述したい場合は,複数行記述してください。
-
注釈は,"#"以降その行の終わりまでとします。
-
列名にスペース,ハイフン(−)を含むときは,引用符(")で囲みます。
-
列名の英小文字と英大文字とを区別したい場合は,引用符(")で囲みます。
引用符(")で囲まない場合は,すべて英大文字として扱われます。
表5‒5 省略時に仮定するデータ型 ORACLEのデータ型
けた数
仮定するデータ型
CHAR(n)
VARCHAR2(n)
NCHAR(n)
NVARCHAR2(n)
−
MCHAR(x)※1
NUMBER
NUMBER(p)
または
NUMBER(p,0)
p<5
SINT
p<10
INT
9<p<30
DEC(p)
NUMBER(p,s)
かつ
s<>0
p<30かつ0<s≦p
DEC(p,s)
p<sかつs<30
DEC(s,s)
s<0かつp+|s|<30
DEC(p+|s|,0)
上記以外
FLT
DATE
−
DATE※2
LONG
−
BLOB(x)※3
LONG RAW
RAW
BLOB
CLOB
NCLOB
BFILE
-
- (凡例)
-
−:特に指定はありません。
- 注※1
-
ORACLEのデータ型がNCHARまたはNVARCHAR2の場合,x=n×2となり,その他はx=nとなります。
- 注※2
-
日付情報だけ取り出します。また,データの内容が紀元前の場合,エラーで終了します。
- 注※3
-
xの値は,環境変数XTLOBBUFSIZEの指定に従います。
指定できるデータ型※1 |
対応するHiRDBのデータ型 |
ファイル作成 |
HiRDB反映 |
---|---|---|---|
INT |
INTEGER |
○ |
△ |
SINT |
SMALLINT |
○ |
△ |
DEC(m,n)※2 |
DECIMAL(m,n) |
○ |
△ |
FLT |
FLOAT |
○ |
△ |
SFLT |
SMALLFLT |
○ |
△ |
CHAR(n)※3※10 |
CHAR(n) |
○ |
△ |
VARCHAR(n)※3※10 |
VARCHAR(n) |
○ |
△ |
MCHAR(n)※3 |
MCHAR(n) |
○ |
△ |
MVARCHAR(n)※3 |
MVARCHAR(n) |
○ |
△ |
NCHAR(n)※4 |
NCHAR(n) |
○ |
△ |
NVARCHAR(n)※4 |
NVARCHAR(n) |
○ |
△ |
DATE |
DATE |
○ |
△ |
TIME |
TIME |
○ |
△ |
YEAR |
INTERVAL YEAR TO DAY |
○ |
△ |
HOUR |
INTERVAL HOUR TO SECOND |
○ |
△ |
BLOB(n〔{K|M|G}〕)※5 |
BLOB(n〔{K|M|G}〕) |
○※6 |
○※7 |
SGMLTEXT(n〔{K|M|G}〕)※5 |
SGMLTEXT |
× |
× |
XML(n〔{K|M|G}〕)※5 |
XML |
× |
× |
FREEWORD(n)※3 |
FREEWORD |
× |
× |
BINARY(n)※8 |
BINARY(n) |
○※6 |
○※7 |
TIMESTAMP(n)※9 |
TIMESTAMP(n) |
○ |
△ |
- (凡例)
-
○:指定できます。
△:指定できません(指定を無視し,反映側のデータ型を仮定します)。
×:指定できません(エラーになります)。
- 注※1
-
ORACLEのデータ型と指定できるデータ型の組み合わせについては「表3-10 HiRDB Dataextractorで変換できるデータ型(ORACLEの場合)(1/2)」,「表3-11 HiRDB Dataextractorで変換できるデータ型(ORACLEの場合)(2/2)」を参照してください。
- 注※2
-
mおよびnは,1≦m≦38,0≦n≦38,m≧nです。
- 注※3
-
nは,バイト数を符号なし整数を指定します。指定値範囲は1≦n≦32,767です。
- 注※4
-
nは,文字数を符号なし整数を指定します。指定値範囲は1≦n≦16,383です。
- 注※5
-
この指定値長は,環境変数XTLOBBUFSIZEと同等の意味があり,環境変数XTLOBBUFSIZEの指定値よりも優先されます。また,指定値の指定範囲と実際の最大長を次に示します。
単位
nの指定範囲
実際のサイズ(バイト)
なし
1≦n≦2,147,483,647
同左
K
1≦n≦2,097,152
n×1,024
M
1≦n≦2,048
n×1,048,576
G
1≦n≦2
n×1,073,741,824
ただし,実際の最大長の計算結果が2,147,483,648の場合は,2,147,483,647になります。
- 注※6
-
環境変数XTLOBBUFSIZEを省略した場合は必ず指定します。指定がない場合,バッファが確保できずにエラー終了することがあります。
- 注※7
-
指定した長さが反映側のBLOBデータ型の定義長よりも長い場合,この指定は無効とし,定義長を仮定します。
- 注※8
-
nは,バイト数を符号なし整数で指定します。指定値範囲は,1≦n≦2,147,483,647です。
- 注※9
-
nは,0,2,4,6のどれかになります。
- 注※10
-
文字集合列,またはNCHAR属性の文字データをUTF-16で抽出する場合,サイズの変更はできません。
(5) ナル値情報ファイル
ナル値情報ファイルは,次のときに指定します。
-
ナル値の既定値を変更するとき
反映対象の列にナル値を格納する場合に,ナル値とみなす値を変更したいときに指定します。抽出したデータと,ここでの指定で設定した値が同じ場合に,表の列にナル値が格納されます。
また,ファイル作成の場合には,抽出データのナル値をどのような既定値としてファイルに格納するかを指定します。
ナル値情報ファイルを省略(−vオプション省略)した場合のナル値,およびここでの指定によって設定されるナル値の既定値については,「表4-11 ナル値の既定値」を参照してください。
- 形式
{列名|フィールド番号=NUM} {〔={HIGH|LOW|ZERO|SPACE|(’定数値’)| (X’16進定数値’)}〕| 〔,{NOCODECONV|CODECONV}〕}
説明
- ●列名
-
ナル値の既定値を変更する列を指定します。
-
HiRDBの表に反映する場合
反映側の表の列名で指定してください。
-
ファイルだけを作成する場合
抽出側の表の列名で指定してください。
−sオプション指定時は指定できません。
-
- ●フィールド番号=NUM
-
ナル値の既定値を変更する列の先頭からの通番を指定します。
指定値範囲は1〜99999
フィールド番号は重複して指定できません。
- HiRDBの表に反映する場合
-
反映表の定義上の先頭からの通番。
- ファイルだけを作成する場合
-
-
−sオプション指定なしの場合
抽出表の定義上の先頭からの通番。
-
−sオプション指定ありの場合
列名記述ファイルに指定した列名の先頭からの通番。
-
- ●{HIGH|LOW|ZERO|SPACE|(’定数値’)|(X’16進定数値’)}
-
ナル値の既定値を指定します。
ここでの指定によって設定される値については,「表4-11 ナル値の既定値」を参照してください。
- ●{NOCODECONV|CODECONV}
-
列単位にコード変換の有無を指定します。
NOCODECONV:文字コード変換機能を使わない場合に指定します。この指定値は,環境変数XTLOCALEを指定してコード変換を行う場合だけ有効となります。
CODECONV:文字コード変換機能を使う場合に指定します。この指定値は,環境変数XTLOCALEを指定してコード変換を行う場合だけ有効となります。
- 注意事項
-
NCHAR属性列で,かつ環境変数XTORANCSETにutf-16を指定した場合,文字コード変換対象となりません。NCHAR属性列を文字コード変換対象にするためには,次の条件をすべて満たす必要があります。
-
すべての文字列がNCHAR属性である。
-
すべての文字列にCODECONVを指定する。
-
抽出側の環境変数XTDATALOCALEにutf-16BE,またはutf-16LEを指定する。
-
- 記述規則
-
-
1行に一つの列について記述します。複数列分記述したい場合は,複数行記述してください。
-
注釈は,"#"以降その行の終わりまでとします。
-
列名にスペース,ハイフン(−)を含むときは,引用符(")で囲んでください。
-
列名の英小文字と英大文字とを区別したい場合は,引用符(")で囲んでください。
-
引用符(")で囲まない場合は,すべて英大文字として扱われます。
-
定数値を指定する場合は,255バイト以下で指定してください。
-
定数値中に「’)」は指定しないでください(アポストロフィ「’」と右括弧「)」は連続して指定しないでください)。
-
HiRDBの表へ反映する場合,反映側の列が非NULL属性のときは,ナル既定値がそのままデータとして格納されます。
-
ファイルの作成時,抽出側の列が非NULL属性のときは,指定を無視します。
-
- 記述例
CLM01=HIGH #INT CLM02=LOW #DATE CLM03=('FFFF') #CHAR(4) 4=NUM=SPACE #CHAR(4)
環境変数XTNLDFLTの指定によって,ナル値情報ファイルの指定規則が異なります。環境変数XTNLDFLTの指定によるナル値情報ファイルの指定規則を次の表に示します。
ナル値情報ファイル 指定内容 |
環境変数XTNLDFLTの指定値 |
|||||
---|---|---|---|---|---|---|
0または1 |
2 |
|||||
HiRDB反映 |
ファイル作成 |
HiRDB反映 |
ファイル作成 |
|||
バイナリ 形式 |
DAT形式 |
バイナリ 形式 |
DAT形式 |
|||
列名|フィールド番号=NUM |
◎ |
◎ |
◎ |
◎ |
◎ |
◎ |
ナル値の既定値 |
○ |
○ |
○ |
× |
× |
× |
NOCODECONV|CODECONV |
○ |
○ |
○ |
○ |
○ |
○ |
- (凡例)
-
◎:必ず指定してください。
○:指定できます。
×:指定できません。