The OraMetaData
object is returned by invoking the Describe
method of the OraDatabase
interface. The Describe
method takes the name of a schema object, such as the emp
table, and returns an OraMetaData
object. The OraMetaData
object provides methods for dynamically navigating and accessing all the attributes (OraMDAttribute
collection) of a schema object described.
An OraMetaData
object is a collection of OraMDAttribute
objects that represent the description information about a particular schema object in the database. The following table is an example of attributes for a OraMetaData
object of type table (ORAMD_TABLE)
.
Table 9-2 list the ORAMD_TABLE
attributes.
Table 9-2 ORAMD_TABLE Attributes
Attribute Name | Value Type | Description |
---|---|---|
|
|
Object ID. |
|
|
Number of columns. |
|
|
Column list. |
|
Boolean |
Is the table typed? |
|
Boolean |
Is the table temporary? |
|
|
Duration - can be session, transaction, or null. |
|
|
Data block address of the segment header. |
|
|
Tablespace in which the table resides. |
|
Boolean |
Is the table clustered? |
|
Boolean |
Is the table partitioned? |
|
Boolean |
Is the table index-only? |
See Also:
"Type (OraMetaData) Property"The OraMetaData
object can be visualized as a table with three columns:
Metadata attribute name
Metadata attribute value
Flag specifying whether the Value
is another OraMetaData
object
The OraMDAttribute
objects contained in the OraMetaData
object can be accessed by creating a subscript that uses ordinal integers or by using the name of the property. Referencing a subscript that is not in the collection (0
to Count-1
) results in the return of a NULL
OraMDAttribute
object.
See "Schema Objects Used in OraMetaData Examples" for OraMetaData
schema definitions used in these examples.
The following Visual Basic example illustrates a simple use of this facility. It retrieves and displays several attributes of the emp
table.
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
Example: Describing a User-Defined Type
See "Example: Describing a User-Defined Type"
See Also: