Key Member Definition Meta-data
The Key Member meta-data contains attributes for defining a member of a key. The meta-data includes an indication of the ordinal position of the data member for a multi-valued key. The Key and Member definitions must already be completed. A Key Member definition is not required if the IsPrimaryKey attribute is set to True on a member definition of the class.
The following paragraph is more relevant for the Profiling System than for Data Warehouse and Analysis.
Three attributes are required to set a data member as part of a key. The MemDefName attribute of the KeyMem meta-data must be set to the MemberDefName value specified in the Member meta-data. The KeyDefName attribute for the KeyMem meta-data must be set to the ClassKeyDefName value specified in the Key meta-data. Finally, the OrdinalPosInKey attribute must be set to the position in the key for the data member. For example, if there are three data members comprising a key, the OrdinalPosInKey attributes will be set to 0, 1, and 2 for the first, second, and third data members, respectively. The sequence of data members is important for the composition of a unique key.
For information about creating a new key member for a class key, see Creating a New Class Key Member.
The following table shows the attributes used for the key member definitions. A set of these attributes is stored in the KeyMem table for each key member defined.
Attribute | Data Type | Constraint | Requirement | Description |
KeyMemID | int | NOT NULL | Leave blank | Stores the unique identifier for the key member. |
CatalogID | int | NULL | Leave blank | Stores the identifier for the schema catalog. |
CatalogName | nvarchar (128) | NULL | Leave blank | Stores the name of the schema catalog, "DWSchema." |
CreatedTime | datetime | NULL | Leave blank | Records when the key member was created. |
Description | nvarchar (128) | NULL | Optional | Stores the description for the key member potentially displayed on the UI. |
DisplayName | nvarchar (128) | NULL | Optional | Stores the name potentially displayed on the UI for the key member. |
KeyDefID | int | NULL | Leave blank | Stores the identifier for the key containing this key member. |
KeyDefName | nvarchar (128) | NULL | Required | Stores the name of the class key. |
MajorVersion | int | NULL | Optional | Stores the major version number for the key member. |
MemDefID | int | NULL | Leave blank | Stores the identifier for the data member used for this key member. |
MemDefName | nvarchar (128) | NULL | Required | Stores the name of the data member used for this key member. |
MinorVersion | int | NULL | Optional | Stores the minor version number for the key member. |
ModifiedTime | datetime | NULL | Leave blank | Records when the key member was last modified. |
OrdinalPosInKey | int | NULL | Required | Stores a 0-based index for the position of the key member in the key. |
Status | int | NULL | Leave blank | Reserved. |