16.4.2 最適化情報パラメタファイルの項目の指定方法
最適化情報パラメタファイルの項目の指定方法を次の表に示します。
-
表「最適化パラメタファイルの項目省略時,及び指定値省略時の設定値」
表16‒8 最適化情報パラメタファイルの項目の指定方法 項目名
指定方法
指定最小値
指定最大値
単位
NROWS
正の整数を指定します。また,指数も指定できます。
0
HiRDBでのFLOAT型の最大値
行
NPAGES
0
ページ
INDEX
インデクス定義時の規則に従います。
NIPAGES
正の整数を指定します。また,指数も指定できます。
1
HiRDBでのFLOAT型の最大値
ページ
NLEVEL
正の整数を指定します。
1
HiRDBでのSMALLINT型の最大値
段
SEQ_RATIO
0
100
%
NENTRY
正の整数を指定します。また,指数も指定できます。
0
HiRDBでのFLOAT型の最大値
個
COLUMN
表定義時の規則に従います。
NUNIQUE
正の整数を指定します。また,指数も指定できます。
0
HiRDBでのFLOAT型の最大値
個
NNULLS
0
個
N_MAX_DUP_KEY
0
個
N_MIN_DUP_KEY
0
個
MAX_VALUE
−
MIN_VALUE
SECTION_COUNT
正の整数を指定します。また,指数も指定できます。
0
100
区間
SECTION_NO
1
区間数
−
SEC_TOTAL_COUNT
1
HiRDBでのSMALLFLT型の最大値
行
SEC_UNIQUE
1
HiRDBでのSMALLFLT型の最大値
個
SEC_MAX_VALUE
−
- (凡例)−:該当しません。
-
表16‒9 MAX_VALUE及びMIN_VALUEの指定方法 COLUMNで指定した列のデータ型
指定方法
最小値,最大値
INT〔EGER〕
数値を指定します。
HiRDBでの各データ型の規則に従います。指定できるけた数の最大値は,HiRDBでの数定数の使用上の制限に従います。詳細は,マニュアル「HiRDB SQLリファレンス」の「データ型」を参照してください。
SMALLINT
[LARGE]DEC[IMAL]
FLOAT又はDOUBLE PRECISION
数値を指定します。また,指数も指定できます。
SMALLFLT又はREAL
CHAR
文字又は文字列を指定します。
CHAR,VARCHAR,MCHAR,及びMVARCHARで,\0や改行などの制御文字が含まれる場合や,列に文字集合が指定されている場合は,文字列を16進表記※2で指定します。
次の指定をする場合は,引用符(")で囲んでください。
-
空白を含む場合
-
長さ0の文字列の場合
-
「x'」,又は「X'」で始まり「'」で終わる文字列の場合
項目の名称を含めて,最適化情報パラメタファイルに1行以内で記述できます。ただし,最適化情報としては先頭16バイトを登録するため,17バイト目以降の文字列は切り捨てられます(引用符は含まれません)。
また,データ型がMCHAR又はMVARCHARの場合,指定した文字列の16,17バイト目が2バイトコードとなっているときには,17バイト以上の文字列を指定してください。
VARCHAR
NCHAR
NVARCHAR
MCHAR
MVARCHAR
DATE
YYYY-MM-DDで指定します。
HiRDBでの各データ型の規則に従います。詳細は,マニュアル「HiRDB SQLリファレンス」の「データ型」を参照してください。
TIME
hh:mm:ssで指定します。
INTERVAL YEAR TO DAY
(±)YYYYMMDD.で指定します。
INTERVAL HOUR TO SECOND
(±)hhmmss.で指定します。
TIMESTAMP
"YYYY-MM-DD△hh:mm:ss〔.nnnnnn〕"
△:半角空白
小数部〔.nnnnnn〕は,定義に合わせて0,2,4,又は6けたの値を指定します。※1また,指定値は引用符で囲んでください。
BINARY
バイナリデータを16進表記※2で指定します。長さ0のデータを指定する場合は,X' 'と指定します。
最適化情報としては先頭の12バイト分のデータを登録します。13バイト以降は指定しても切り捨てられます。
-
- 注※1
-
TIMESTAMP型の小数秒部のけた数を指定した場合の格納方法を次に示します。
定義けた数
入力データの小数秒部のけた数
0
2
4
6
0,2,4,及び6以外
0
そのまま格納します。
定義けた数以降を切り捨てます。
エラー(KFPL31002-E)
2
定義けた数まで0を埋めます。
そのまま格納します。
定義けた数以降を切り捨てます。
4
定義けた数まで0を埋めます。
そのまま格納します。
定義けた数以降を切り捨てます。
6
定義けた数まで0を埋めます。
そのまま格納します。
- 注※2
-
16進表記は,x'****',又はX'****'の形式とします。****の部分は,16進文字列(0〜9,a〜f,及びA〜F)を2文字単位に記述します。
表16‒10 最適化パラメタファイルの項目省略時,及び指定値省略時の設定値 項目名
指定値
格納先のディクショナリ表名
格納先の列名
設定値
格納先のディクショナリ表の設定対象行
NROWS※1
あり
あり
SQL_TABLE_STATISTICS
N_ROW
NROWSの指定値
-tオプションで指定した表
なし
ナル値
なし
−
更新前の設定値
NPAGES
あり
あり
N_PAGE
NPAGESの指定値
なし
ナル値
なし
−
更新前の設定値
NIPAGES
あり
あり
SQL_INDEX_STATISTICS
N_IXPG
NIPAGESの指定値
INDEXで指定したインデクス
なし
ナル値
なし
−
更新前の設定値
NLEVEL
あり
あり
N_LEVEL
NLEVELの指定値
なし
ナル値
なし
−
更新前の設定値
SEQ_RATIO
あり
あり
SEQ_RATIO
SEQ_RATIOの指定値
なし
ナル値
なし
−
更新前の設定値
NENTRY
あり
あり
N_ENTRY
N_ENTRYの指定値
なし
ナル値
なし
−
更新前の設定値
NUNIQUE
あり
あり
SQL_COLUMN_STATISTICS
N_UNIQUE
NUNIQUEの指定値
COLUMNで指定した列
なし
ナル値
なし
−
更新前の設定値
NNULLS※1
あり
あり
N_NULL
NNULLSの指定値
なし
ナル値
なし
−
更新前の設定値
N_MAX_DUP_KEY
あり
あり
N_MAX_DUP_KEY
N_MAX_DUP_KEYの指定値
なし
ナル値
なし
−
更新前の設定値
N_MIN_DUP_KEY
あり
あり
N_MIN_DUP_KEY
N_MIN_DUP_KEYの指定値
なし
ナル値
なし
−
更新前の設定値
MAX_VALUE※1
あり
あり
RANGE_VALUES
MAX_VALUEの指定値
なし
ナル値
なし
−
ナル値
MIN_VALUE※1
あり
あり
MIN_VALUEの指定値
なし
ナル値
なし
−
ナル値
SECTION_COUNT
あり
あり
SECTION_COUNTの指定値※2
なし
0
なし
−
0
SECTION_NO
あり
あり
SECTION_NOの指定値
なし
エラー
なし
−
エラー
SEC_TOTAL_COUNT
あり
あり
SEC_TOTAL_COUNTの指定値
なし
エラー
なし
−
エラー
SEC_UNIQUE
あり
あり
SEC_UNIQUEの指定値
なし
エラー
なし
−
エラー
SEC_MAX_VALUE
あり
あり
SEC_MAX_VALUEの指定値
なし
エラー
なし
−
エラー
- (凡例)
-
−:該当しません。
- 注※1
-
NROWS,NNULLS,MAX_VALUE,又はMIN_VALUEのどれかを省略した場合,SQL_COLUMN_STATISTICSのRANGE_VALUES列にナル値を設定します。
- 注※2
-
区関数(SECTION_COUNT),及び区間分布情報の項目をすべて省略した場合,0が設定されます。区関数分の区間分布情報の指定項目のどれかを省略した場合はエラーとなります。