付録A.5 表,及びインデクスに関する質問
(1) 既存のインデクスの定義を知るには?
- 質問
-
SQLでインデクスが定義されているかどうかが分かりますか?
- お答えします
-
ディクショナリ表を検索すれば可能です。次に例を示します。
また,ディクショナリ搬出入ユティリティ(pdexpコマンド)の定義系SQLの生成機能でも確認できます。
- (例1)
-
インデクスが付いた表を一覧検索します。
SELECT TABLE_SCHEMA,TABLE_NAME,TABLE_ID FROM MASTER.SQL_TABLES WHERE N_INDEX >= 1
- (例2)
-
定義した表のインデクス名,列名を表示します。
SELECT TABLE_SCHEMA,TABLE_NAME,INDEX_NAME,INDEX_ID,COLUMN_NAME FROM MASTER.SQL_INDEX_COLINF WHERE TABLE_SCHEMA = USER
- (例3)
-
インデクスが付いた表の表名,表id,インデクス名,インデクスid,列名をまとめて表示します。
SELECT X.TABLE_SCHEMA,X.TABLE_NAME,X.TABLE_ID, INDEX_ID,COLUMN_NAME FROM MASTER.SQL_TABLES X,MASTER.SQL_INDEX_COLINF Y WHERE X.TABLE_SCHEMA = Y.TABLE_SCHEMA AND X.TABLE_SCHEMA = USER AND X.TABLE_NAME = Y.TABLE_NAME AND N_INDEX >= 1
(2) 既存のFIX表に列を追加するには?
- 質問
-
既にデータが格納されているFIX表に列を追加したいのですが,方法はありますか?
- お答えします
-
あります。列の追加方法については,「列を追加する方法」を参照してください。