INDICES 関数

構文

INDICES (file.variable [ ,indexname])

説明

INDICES 関数は、ファイルの 2 次キー索引に関する情報を返します。

file.variable は、開いているファイルを指定します。

indexname は、指定ファイル内の 2 次索引名です。

file.variable のみが指定されると、ファイルの 2 次索引すべての索引名を含んだ動的配列が返されます。索引名はフィールド・マークで区切られます。 file.variable に索引がない場合は、空白ストリングが戻ります。

indexname が指定されると、indexname の動的配列に情報が返されます。動的な配列のフィールド 1 は次の情報を格納します。

表 1. 動的な配列のフィールド 1
格納される値 説明
値 1 D

I

A

S

C

SQL

データ記述子索引

I 記述子索引

A 記述子索引

S 記述子索引

フィールド 8 で相関関係を持つ A 記述子索引または S 記述子索引。SQL 索引。

値 2 1

索引の再作成が必要

索引の再作成は不要

値 3 1

空白ストリングは索引処理されない

空白ストリングは索引処理される

値 4 1

自動更新が有効

自動更新が無効

値 5 パス名

索引ファイルの絶対パス名。

ファイルは分散ファイル

値 6 1

更新は保留中

保留中の更新なし

値 7 L

R

左揃え

右揃え

値 8 N

U

ユニークでない。

ユニーク

値 9 パート番号 分散ファイルのパート番号のサブ値リスト。
値 10 1 索引はビルドが必要

空 ビルドは不要

値 9 内のサブ値に対応するサブ値リスト。
値 11 1 空白ストリングは索引が付けられていない。

空 索引のある空白ストリング

値 9 内のサブ値に対応するサブ値リスト。
値 12 1 更新可能

空 更新不可能

値 9 内のサブ値に対応するサブ値リスト。
値 13 索引のパス名 値 9 内のサブ値に対応する、分散ファイルのパート・ファイル上の索引のパス名のサブ値リスト。
値 14 1 更新保留

空 延期される更新はなし

値 9 内のサブ値に対応するサブ値リスト。
値 15 L 左揃え

R 右揃え

値 9 内のサブ値に対応するサブ値リスト。
値 16 N ユニークでない

U ユニーク

値 9 内のサブ値に対応するサブ値リスト。
値 17 照合名 索引の照合規則の名前

フィールド 1 の値 1 が D、A、または S の場合、フィールド 2 には、フィールド位置 (すなわちフィールド番号) が含まれ、フィールド 6 には、S (単一値フィールド) か M (複数値フィールド) が含まれます。

フィールド 1 の値 1 が I または SQL なら、動的な配列のそれ以外のフィールドはファイル辞書の I 記述子から引き出された次の情報を格納します。

フィールド
格納される値
フィールド 2
I - タイプ式
フィールド 3
出力変換コード
フィールド 4
列見出し
フィールド 5
幅、位置揃え
フィールド 6
S - 単独値フィールド

M - 複数値フィールド

フィールド 7
アソシエーション名
フィールド 8-15
フィールド 16-19
コンパイル済み I 記述子データ
フィールド 20
コンパイル済み I 記述子コード

フィールド 1 の値 1 が C の場合、動的な配列のその他のフィールドには、ファイル・ディクショナリーの A 記述子か、S 記述子から引き出された次の情報が含まれます。

フィールド
格納される値
フィールド 2
フィールド番号 (フィールド位置)
フィールド 3
列見出し
フィールド 4
アソシエーション・コード
フィールド 5-6
フィールド 7
出力変換コード
フィールド 8
相関コード
フィールド 9
L または R (位置揃え)
フィールド 10
表示列幅

file.variableindexname のどちらかが NULL 値である場合、INDICES 関数は正しく実行されずプログラムはランタイム・エラー・メッセージを出力して終了します。

トランザクション内 (BEGIN TRANSACTION ステートメントと COMMIT ステートメントの間) で実行されるファイルの更新は、COMMIT ステートメントが実行されるまでは、INDICES 関数にアクセスできません。

NLS が有効なら、INDICES 関数は索引の作成時に適用された現在の照合規則 (NLS.LC.COLLATE ファイルで指定される) の名前を報告します。 索引の照合規則の名前については、フィールド 1 の値 17 を参照してください。