The MEMBERS schema rowset returns metadata about the members that are available on each cube that can be accessed by the provider. Each row in the MEMBERS schema rowset corresponds to one member that is available in the provider.
The following table describes the columns that are available in the MEMBERS schema rowset.
Column Name | Type Indicator | Mapped Value | Restrictions Supported? |
---|---|---|---|
CATALOG_NAME | DBTYPE_WSTR | Name of the catalog that contains this member. | Yes |
SCHEMA_NAME | DBTYPE_WSTR | Name of the schema that contains this member. | Yes |
CUBE_NAME | DBTYPE_WSTR | Name of the cube that contains this member. | Yes |
DIMENSION_UNIQUE_NAME | DBTYPE_WSTR | Unique name of the dimension that contains this member. | Yes |
HIERARCHY_UNIQUE_NAME | DBTYPE_WSTR | Unique name of the hierarchy that contains this member. | Yes |
LEVEL_UNIQUE_NAME | DBTYPE_WSTR | Unique name of the level that contains this member. | Yes |
LEVEL_NUMBER | DBTYPE_UI4 | Distance from this member to the root of the hierarchy. The LEVEL_NUMBER of the root level is 0. | Yes |
MEMBER_ORDINAL | DBTYPE_UI4 | Ordinal number of this member. | No |
MEMBER_NAME | DBTYPE_WSTR | Name of this member. | Yes |
MEMBER_UNIQUE_NAME | DBTYPE_WSTR | Unique name of this member. | Yes |
MEMBER_TYPE | DBTYPE_WSTR | Type of this member, either:
|
Yes |
MEMBER_GUID | DBTYPE_GUID | GUID of this member. | No |
MEMBER_CAPTION | DBTYPE_WSTR | Caption of this member. Same as MEMBER_NAME if no caption exists for this member. | Yes |
CHILDREN_CARDINALITY | DBTYPE_UI4 | Number of children contained by this member. | No |
PARENT_LEVEL | DBTYPE_UI4 | Distance from this member's parent to the root level of the hierarchy. The LEVEL_NUMBER of the root level is 0. | No |
PARENT_UNIQUE_NAME | DBTYPE_UI4 | Unique name of this member's parent. | No |
PARENT_COUNT | DBTYPE_UI4 | Number of parents of this member. | No |
DESCRIPTION | DBTYPE_WSTR | Description of this member. | No |
Restrictions enable an OLE DB consumer to restrict the rows that are returned in a schema rowset by IDBSchemaRowset::GetRowset. A restriction is a value for a specific column. When a restriction is passed to IDBSchemaRowset::GetRowset, all rows that are returned in the schema rowset must match the restriction value on the specified column. Restriction values do not support pattern matching or wildcards. For example, the restriction value D_F matches D_F but not DEF.
An OLE DB consumer can programmatically discover the columns on which the providers support restrictions by calling IDBSchemaRowset::GetSchemas.
Note: For definitions of the type indicators, see "Type Indicators" in Microsoft's OLE DB specification documentation.
The MEMBERS schema rowset has a twelfth restriction, called tree operation, that does not correspond to an actual column. The tree operation restriction identifies the relationship between the returned members and the member specified in the MEMBER_UNIQUE_NAME restriction. These values can be bitwise-combined using OR to form a bitmask that represents all returned rows. The following table displays the tree operation values and the relationships that they identify.
Tree Operation | Relationship of returned members to the specified MEMBER_UNIQUE_NAME |
---|---|
MDTREEOP_ANCESTORS | ancestors of MEMBER_UNIQUE_NAME |
MDTREEOP_CHILDREN | immediate children of MEMBER_UNIQUE_NAME |
MDTREEOP_SIBLINGS | members on the same level as MEMBER_UNIQUE_NAME |
MDTREEOP_PARENT | immediate parent of MEMBER_UNIQUE_NAME |
MDTREEOP_SELF | MEMBER_UNIQUE_NAME itself |
MDTREEOP_DESCENDANTS | all of the descendants of MEMBER_UNIQUE_NAME |