16.4.2 最適化情報パラメタファイルの項目の指定方法

最適化情報パラメタファイルの項目の指定方法を次の表に,MAX_VALUE及びMIN_VALUEの指定方法を表16-9に示します。また,最適化パラメタファイルの項目省略時,及び指定値省略時の設定値を表16-10に示します。

表16-8 最適化情報パラメタファイルの項目の指定方法

項目名指定方法指定最小値指定最大値単位
NROWS正の整数を指定します。また,指数も指定できます。0HiRDBでのFLOAT型の最大値
NPAGES0ページ
INDEXインデクス定義時の規則に従います。
NIPAGES正の整数を指定します。また,指数も指定できます。1HiRDBでのFLOAT型の最大値ページ
NLEVEL正の整数を指定します。1HiRDBでのSMALLINT型の最大値
SEQ_RATIO0100
NENTRY正の整数を指定します。また,指数も指定できます。0HiRDBでのFLOAT型の最大値
COLUMN表定義時の規則に従います。
NUNIQUE正の整数を指定します。また,指数も指定できます。0HiRDBでのFLOAT型の最大値
NNULLS0
N_MAX_DUP_KEY0
N_MIN_DUP_KEY0
MAX_VALUE
MIN_VALUE
(凡例)-:該当しません。

表16-9 MAX_VALUE及びMIN_VALUEの指定方法

COLUMNで指定した列のデータ型指定方法最小値,最大値
INT数値を指定します。HiRDBでの各データ型の規則に従います。指定できるけた数の最大値は,HiRDBでの数定数の使用上の制限に従います。
SMALLINT
[LARGE]DEC[IMAL]
FLOAT又はDOBLE PRECISION数値を指定します。また,指数も指定できます。
SMALLFLT又はREAL
CHAR文字又は文字列を指定します。空白を含む場合,及び長さ0の文字列の場合は,引用符(")で囲んでください。項目の名称を含めて,最適化情報パラメタファイルに1行以内で記述できます。ただし,最適化情報としては先頭16バイトを登録するため,17バイト目以降の文字列は切り捨てられます(引用符は含まれません)。
また,データ型がMCHAR又はMVARCHARの場合,指定した文字列の16,17バイト目が2バイトコードとなっているときには,17バイト以上の文字列を指定してください。
VARCHAR
NCHAR
NVARCHAR
MCHAR
MVARCHAR
DATEYYYY-MM-DDで指定します。HiRDBでの各データ型の規則に従います。
TIMEhh: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型の小数秒部のけた数を指定した場合の格納方法を次に示します。
定義けた数入力データの小数秒部のけた数
02460,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ありありSQL_TABLE_STATISTICSN_ROWNROWSの指定値-tオプションで指定した表
なしナル値
なし更新前の設定値
NPAGESありありN_PAGENPAGESの指定値
なしナル値
なし更新前の設定値
NIPAGESありありSQL_INDEX_STATISTICSN_IXPGNIPAGESの指定値INDEXで指定したインデクス
なしナル値
なし更新前の設定値
NLEVELありありN_LEVELNLEVELの指定値
なしナル値
なし更新前の設定値
SEQ_RATIOありありSEQ_RATIOSEQ_RATIOの指定値
なしナル値
なし更新前の設定値
NENTRYありありN_ENTRYN_ENTRYの指定値
なしナル値
なし更新前の設定値
NUNIQUEありありSQL_COLUMN_STATISTICSN_UNIQUENUNIQUEの指定値COLUMNで指定した列
なしナル値
なし更新前の設定値
NNULLSありありN_NULLNNULLSの指定値
なしナル値
なし更新前の設定値
N_MAX_DUP_KEYありありN_MAX_DUP_KEYN_MAX_DUP_KEYの指定値
なしナル値
なし更新前の設定値
N_MIN_DUP_KEYありありN_MIN_DUP_KEYN_MIN_DUP_KEYの指定値
なしナル値
なし更新前の設定値
MAX_VALUEありありRANGE_VALUESMAX_VALUEの指定値
なしナル値
なしナル値
MIN_VALUEありありMIN_VALUEの指定値
なしナル値
なしナル値
(凡例)
-:該当しません。
注※
NROWS,NNULLS,MAX_VALUE,又はMIN_VALUEのどれかを省略した場合,RANGE_VALUES列にナル値を設定します。