Hitachi

ノンストップデータベース HiRDB Version 10 システム運用ガイド(UNIX(R)用)


付録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表に列を追加したいのですが,方法はありますか?

お答えします

あります。列の追加方法については,「列を追加する方法」を参照してください。