58 DBMS_DIMENSION

DBMS_DIMENSIONを使用すると、ディメンションの関連を検証でき、さらに、Enterprise Managerのディメンション・ウィザードのかわりにディメンションの定義を表示できます。

参照:

DBMS_DIMENSIONパッケージの概念および使用方法の詳細は、『Oracle Databaseデータ・ウェアハウス・ガイド』を参照してください。

この章のトピックは、次のとおりです:

58.1 DBMS_DIMENSIONのセキュリティ・モデル

このパッケージのセキュリティは、選択したユーザーまたはロールにEXECUTE権限を付与することで制御できます。

ユーザーは、独自のスキーマに含まれるすべてのディメンションを検証または記述できます。別のスキーマに含まれるディメンションを検証または記述するには、そのディメンションに対するオブジェクト権限を付与されているか、CREATE ANY DIMENSIONALTER ANY DIMENSIONおよびDROP ANY DIMENSIONのうちいずれかのシステム権限を付与されている必要があります。

58.2 DBMS_DIMENSIONサブプログラムの要約

この表は、DBMS_DIMENSIONサブプログラムを示し、簡単に説明しています。

表58-1 DBMS_DIMENSIONパッケージのサブプログラム

サブプログラム 説明

DESCRIBE_DIMENSIONプロシージャ

ディメンションの所有者および名前、レベル、階層および属性など、入力ディメンションの定義を出力します。

VALIDATE_DIMENSIONプロシージャ

ディメンションで指定した関連が正しいことを検証します。

58.2.1 DESCRIBE_DIMENSIONプロシージャ

このプロシージャは、ディメンションの名前、レベル、階層および属性など、ディメンションの定義を表示します。DBMS_OUTPUTパッケージを使用して出力を表示します。

構文

DBMS_DIMENSION.DESCRIBE_DIMENSION (
   dimension  IN VARCHAR2);

パラメータ

表58-2 DESCRIBE_DIMENSIONプロシージャのパラメータ

パラメータ 説明

dimension

owner.nameの書式で表示されるディメンションの所有者および名前。

58.2.2 VALIDATE_DIMENSIONプロシージャ

ディメンションで指定した関連が有効であることを検証します。無効であることが判明した行のROWIDは、ユーザーのスキーマにあるDIMENSION_EXCEPTIONS表に格納されます。

構文

DBMS_DIMENSION.VALIDATE_DIMENSION (
   dimension               IN VARCHAR2,
   incremental             IN BOOLEAN := TRUE,
   check_nulls             IN BOOLEAN := FALSE,
   statement_id            IN VARCHAR2 := NULL );

パラメータ

表58-3 VALIDATE_DIMENSIONプロシージャのパラメータ

パラメータ 説明

dimension

owner.nameの書式で表示されるディメンションの所有者および名前。

incremental

TRUEの場合は、このディメンションの表の新しい行のみをチェックします。FALSEの場合は、すべての行をチェックします。

check_nulls

TRUEの場合は、すべてのレベルの列についてNULLでないかどうか検証されます。

FALSEの場合、チェックは省略されます。NOT NULL制約などの別の方法でNULLでないことが保証されている場合は、FALSEを指定します。

statement_id

クライアントが提供する一意の識別子。出力行を特定プロシージャの起動と関連付けます。