カタログ・ビュー

データベース・マネージャーは、 基本システム・カタログ表の上に定義される 2 組のカタログのビューを作成し、保守しています。

  • SYSCAT ビューは、SYSCAT スキーマに存在する読み取り専用のカタログ・ビューです。
  • SYSSTAT ビューは、SYSSTAT スキーマに存在する更新可能なカタログ・ビューです。 更新可能なビューには、オプティマイザーで使用される統計情報が入れられます。 これらのビューのいくつかの列内の値を変更して、 パフォーマンスをテストすることができます。 (統計を変更する前に、RUNSTATS コマンドを呼び出してすべての統計が現行状態を反映するように することをお勧めします。)

アプリケーションを作成する際は、基本のカタログ表ではなく、SYSCAT および SYSSTAT ビューを対象とする必要があります。

すべてのカタログ・ビューは、データベースの作成時に作成されます。 カタログ・ビューは、明示的に作成またはドロップすることはできません。 Unicode データベースでは、カタログ・ビューは IDENTITY 照合で作成されます。 非 Unicode データベースでは、カタログ・ビューはデータベース照合で作成されます。 ビューは、SQL データ定義ステートメント、環境ルーチン、 および特定のユーティリティーに対応する通常の操作の過程で更新されます。 カタログ・ビューのデータは、通常の SQL 照会機能によって使用可能です。 カタログ・ビューは (一部の更新可能なカタログ・ビューを除いて)、 通常の SQL データ操作コマンドを使用して変更することはできません。

ユーザーの更新可能な SYSSTAT カタログ・ビューにオブジェクト表、統計ビュー、列、または索引オブジェクトが表示されるのは、そのユーザーにそのオブジェクトに対する明示的な CONTROL 特権、または明示的な DATAACCESS 権限が与えられている場合だけです。 また、ユーザーの更新可能な SYSSTAT.TABLES カタログ・ビューにオブジェクト表または統計ビューが表示されるのは、そのユーザーが、そのオブジェクトに対する CONTROL 特権を持つ役割か、または DATAACCESS 権限を持つ役割の、直接または間接のメンバーである場合です。 役割の特権および権限は、その他の SYSSTAT カタログ・ビューに表示されるオブジェクトを判別する際には考慮されません。 ユーザーの更新可能な SYSSTAT.ROUTINES カタログ・ビューにルーチン・オブジェクトが表示されるのは、そのユーザーがそのルーチンを所有しているか、明示的な SQLADM 権限を保持している場合です。 グループの特権および権限は、ユーザーの更新可能な SYSSTAT カタログ・ビューに表示されるオブジェクトを判別する際には考慮されません。

ビュー内での列の順序はリリースによって変更されることがあります。 これによりプログラミング・ロジックが影響を受けないようにするためには、 選択リスト内で列を明示的に指定し、SELECT * は使用しないようにします。 列は、記述するオブジェクトのタイプに基づいて、一貫性のある名前を持ちます。

表 1. 列が記述するオブジェクトに関して一貫性のある列名のサンプル
記述されるオブジェクト 列名
TABSCHEMA, TABNAME
索引 INDSCHEMA, INDNAME
索引拡張 IESCHEMA, IENAME
ビュー VIEWSCHEMA, VIEWNAME
制約 CONSTSCHEMA, CONSTNAME
制御 CONTROLSCHEMA, CONTROLNAME, CONTROLID
トリガー TRIGSCHEMA, TRIGNAME
パッケージ PKGSCHEMA, PKGNAME
タイプ TYPESCHEMA, TYPENAME, TYPEID
関数 ROUTINESCHEMA, ROUTINEMODULENAME, ROUTINENAME, ROUTINEID
メソッド ROUTINESCHEMA, ROUTINEMODULENAME, ROUTINENAME, ROUTINEID
プロシージャー ROUTINESCHEMA, ROUTINEMODULENAME, ROUTINENAME, ROUTINEID
COLNAME
スキーマ SCHEMANAME
表スペース TBSPACE
データベース・パーティション・グループ DBPGNAME
バッファー・プール BPNAME
イベント・モニター EVMONNAME
条件 CONDSCHEMA, CONDMODULENAME, CONDNAME, CONDMODULEID
データ・ソース SERVERNAME, SERVERTYPE, SERVERVERSION
グローバル変数 VARSCHEMA, VARMODULENAME, VARNAME, VARMODULEID
ヒストグラム・テンプレート TEMPLATENAME, TEMPLATEID
モジュール MODULESCHEMA, MODULENAME, MODULEID
期間 PERIODNAME
ロール ROLENAME, ROLEID
セキュリティー・ラベル SECLABELNAME, SECLABELID
セキュリティー・ポリシー SECPOLICYNAME, SECPOLICYID
シーケンス SEQSCHEMA, SEQNAME
しきい値 THRESHOLDNAME, THRESHOLDID
トラステッド・コンテキスト CONTEXTNAME、CONTEXTID
使用量リスト USAGELISTSCHEMA, USAGELISTNAME, USAGELISTID
作業アクション ACTIONNAME, ACTIONID
作業アクション・セット ACTIONSETNAME, ACTIONSETID
作業クラス WORKCLASSNAME, WORKCLASSID
作業クラス・セット WORKCLASSSETNAME, WORKCLASSSETID
ワークロード WORKLOADID, WORKLOADNAME
ラッパー WRAPNAME
変更タイム・スタンプ ALTER_TIME
タイム・スタンプの作成 CREATE_TIME