説明
OraMetaData
オブジェクトは、OraDatabase
インタフェースのDescribe
メソッドをコールすることによって戻されます。Describe
メソッドは、emp
表などのスキーマ・オブジェクトの名前を取得して、OraMetaData
オブジェクトを戻します。OraMetaData
オブジェクトは、記述されているスキーマ・オブジェクトのすべての属性(OraMDAttribute
コレクション)に動的にナビゲートおよびアクセスするメソッドを提供します。
OraMetaData
オブジェクトは、OraMDAttribute
オブジェクトのコレクションで、データベース内の特定のスキーマ・オブジェクトに関する記述情報を表します。次の表は、OraMetaData
オブジェクト型の表(ORAMD_TABLE
)の属性の例です。
表9-2に、ORAMD_TABLE
の属性を示します。
表9-2 ORAMD_TABLEの属性
属性名 | 値の型 | 説明 |
---|---|---|
|
|
オブジェクトID。 |
|
|
列の数。 |
|
|
列リスト。 |
|
ブール |
表に入力されたかどうかを示す。 |
|
ブール |
一時表かどうかを示す。 |
|
|
期間 - セッション、トランザクション、NULLのいずれか。 |
|
|
セグメント・ヘッダーのデータ・ブロック・アドレス。 |
|
|
表が属する表領域。 |
|
ブール |
表がクラスタ化されているかどうかを示す。 |
|
ブール |
表がパーティション化されているかどうかを示す。 |
|
ブール |
索引構成表かどうかを示す。 |
備考
OraMetaData
オブジェクトは、3つの列を含む表として視覚化できます。
メタデータ属性名
メタデータ属性値
Value
が別のOraMetaData
オブジェクトであるかどうかを示すフラグ
順序を示す整数を使用する添字を作成するか、またはプロパティ名を使用することによって、OraMDAttribute
オブジェクトに含まれるOraMDAttribute
オブジェクトにアクセスできます。コレクションの範囲(0
からCount-1
)外の添字で参照すると、NULL
のOraMDAttribute
オブジェクトが戻ります。
例
これらの例で使用されているOraMetaData
スキーマ定義については、「OraMetaDataの例で使用されているスキーマ・オブジェクト」を参照してください。
次のVisual Basicの例では、この機能の簡単な使用方法を示します。ここでは、emp
表のいくつかの属性を取り出して表示します。
Set empMD = OraDatabase.Describe("emp") 'Display the name of the Tablespace msgbox empMD("tablespace") 'Display name, data type, and size of each column in the emp table. Set empColumnsMD = empMD("Columns") for I = 1 to empColumns.Count Set ColumnMD = empColumnsMD(I) MsgBox ColumnMD("Name") & ColumnMD("Data Type") & ColumnMD("Length") Next I
例: ユーザー定義型の記述
「例: ユーザー定義型の記述」を参照してください。
例: 不明なスキーマ・オブジェクトの記述
「例: 不明なスキーマ・オブジェクトの記述」を参照してください。