Share via


Memdef Table: Member Definition Metadata

A data member represents an attribute of a class. For example, age and gender might be data members that are associated with the user class. The memdef table contains metadata that defines data members of user classes. The OLE DB provider for Commerce Server 2009 uses metadata from the memdef table and other metadata to store instances of user classes in the database.

For information about how to create a new data member for an existing class, see Creating a New Data Member.

The following table describes the columns in the memdef table. There is a row in the memdef table for each data member that is defined.

Column name

Type

Allow null

Requirement

Description

MemberDefID

int

no

Leave blank

Stores the internal identifier for the data member.

CatalogID

int

yes

Leave blank

Stores the identifier for the schema catalog.

CatalogName

nvarchar (128)

yes

Leave blank

Stores the name of the schema catalog, "DWSchema".

ClassDefID

int

yes

Leave blank

Stores the internal identifier for the class.

ClassDefName

nvarchar (57)

yes

Required

Stores the name of the class that contains this class.

ColumnID

int

yes

Leave blank

Stores the identifier of the column for the data member.

ColumnName

nvarchar (100)

yes

Leave blank unless GenerateColumnDef = False.

Stores the name of the column for storing the data member.

CreatedTime

datetime

yes

Reserved

Records when the data member definition was created.

DefaultValueAsStr

nvarchar (128)

yes

Optional

Stores the default value of the data member as a string. If this is not NULL, the IsDfltNull attribute should be set to False(0).

Description

nvarchar (128)

yes

Optional

Stores the description of the object.

DisplayName

nvarchar (128)

yes

Optional

Stores the display name of the object.

ExpressionStr

nvarchar (128)

yes

Optional

Used by aggregation classes. Stores the expression string that uses the data member. Can contain any valid base class member or aggregation function.

GenerateColumnDef

tinyint

yes

Leave blank

True (1) indicates that the table column definition in the underlying data store should be generated automatically.

IdxFileGroupPolicy

smallint

yes

Leave blank

Reserved.

IsActive

tinyint

yes

Optional

Indicates whether the data member is active (instances may be added). Default value is 1.

IsCached

tinyint

yes

Optional

Indicates whether the data member is cached for fast access. Used only by the Profiles System.

IsDateDeleteMember

tinyint

yes

Optional

Used to determine which date member (for a class that has multiple date members) will be used when you delete fact data by date.

IsDfltNull

tinyint

yes

Optional

Indicates whether the default value for the data member is NULL. If a default value is specified, ISDfltNull should be False (0). Default value is True (1).

IsDimension

tinyint

yes

Optional

Indicates whether the data member represents a dimension.

IsEncrypted

tinyint

yes

Optional

Indicates whether the data member is encrypted. Used only by the Profiles System.

IsExported

tinyint

yes

Optional

Indicates whether children of the class inherit the data member. Used only by the Profiles System.

IsHashingKey

tinyint

yes

Optional

Indicates whether the data member is a hashing key. Used only by the Profiles System.

IsHidden

tinyint

yes

Optional

Indicates whether the data member is hidden.

IsIdentityMember

tinyint

yes

Leave blank

Indicates whether the data member is an identity data member.

IsJoinKey

tinyint

yes

Leave blank

Indicates whether the data member is used as a join key across classes for the Profiles resource.

IsMeasure

tinyint

yes

Optional

Indicates whether the data member represents a measure.

IsMultiValued

tinyint

yes

Optional

Indicates whether the data member is multivalued.

IsPersistent

tinyint

yes

Optional

Indicates whether the data member is persisted in the underlying data store. Default value is 1.

IsPrimaryKey

tinyint

yes

Optional

Indicates whether the data member is the primary key for the class. This is used together with the GenerateKeyDef attribute for the ClassDef.

IsPrivate

tinyint

yes

Optional

Indicates whether the data member is private.

IsRDNAttribute

tinyint

yes

Optional

When you refer to an Active Directory data source, True (1) indicates that this is the relative distinguished name attribute for the class.

IsRequired

tinyint

yes

Optional

Indicates whether the data member requires a value. Set to True (1) for key members.

IsSearchable

tinyint

yes

Optional

Indicates whether the data member is searchable. Used by the Profiles System.

IsTextSearchable

tinyint

yes

Optional

Indicates whether the data member is searchable by a text search engine. Used by the Profiles resource.

IsUniqueKey

tinyint

yes

Leave blank

Indicates whether the data member is part of a unique key for the class. Used by the Profiles resource.

LinkTableName

nvarchar (57)

yes

Leave blank

Stores the name of the link table for a multivalued data member.

MajorVersion

int

yes

Reserved

Stores the major version number for the data member definition.

MemberDefName

nvarchar (100)

yes

Required

Stores the name of the data member.

MinorVersion

int

yes

Reserved

Stores the minor version number for the data member.

ModifiedTime

datetime

yes

Reserved

Records when the data member definition was last modified.

OrdinalPosInClass

int

yes

Leave blank

Indicates the ordinal position of the data member in the class. Used only by the Profiles System.

ParentGroupName

nvarchar (128)

yes

Leave blank

Stores the name of the parent group. Used only by the Profiles System.

RelationName

nvarchar (128)

NULL

Leave blank

Stores the name of the relation for a member relation object.

Status

int

yes

Reserved

Reserved.

TypeID

int

yes

Leave blank

Stores the identifier code for the data type of the data member.

TypeName

nvarchar (128)

yes

Required

Stores the name of the data type for the data member. See the table immediately following this table.

UseHashInSearch

tinyint

yes

Leave blank

Indicates whether to use a hash index when you search for this data member. Used only by the Profiles System.

ValColumnName

nvarchar (100)

yes

Optional

Stores the name of the value column for the data member. Used when you create multivalued members.

ValTableName

nvarchar (57)

yes

Optional

Stores the name of the value table. Used when you create multivalued members.

The following table contains the valid data types that are used for the TypeName attribute of the Member metadata for single-valued members. Binary data is not supported. Support for multivalued members is limited to the set of types that can be written by Visual Basic script. There is no multivalue support for UINT64, IDENTITY6, IDENTITY, ULONG, or WORD. BOOL is supported in Visual Basic script. But the OLE DB provider for Commerce Server 2009 does not maintain the order of values. Therefore, a multivalued BOOL member does not evaluate as expected.

TypeName

Description

BOOL

Boolean (0 or 1).

CURRENCY

64-bit currency.

DATE

Standard date.

DATETIME

SQL date/time.

FILETIME

Standard file date/time stamp.

IDENTITY

48-bit numeric identifier.

Does not support multivalued members.

IDENTITY6

48-bit numeric identifier.

Does not support multivalued members.

INT64

64-bit integer.

Does not support multivalued members.

LONG

32-bit integer.

LONGREAL

64-bit floating-point number.

None

Empty type.

NULL

No value.

REAL

32-bit floating-point number.

SHORT

16-bit integer.

TIME

Standard Windows formatted time string (for example, "11:30 AM").

UINT64

64-bit unsigned integer.

Does not support multivalued members.

ULONG

32-bit unsigned integer.

Does not support multivalued members.

UUID

Packed decimal number that is used for GUIDs.

WORD

16-bit unsigned integer.

Does not support multivalued members.

WSTR

Unicode string of length 255.

WSTR8, WSTR12. WSTR16, WSTR24, WSTR32, WSTR48, WSTR64, WSTR80, WSTR96, WSTR112, WSTR128, WSTR144, WSTR160, WSTR255, WSTR400, WSTR512

Unicode string of designated length.

See Also

Other Resources

Data Warehouse Meta-Model