Primary key
A primary key is one type of key. The other type of key is an alternate key. There is a maximum of one primary key per table, whereas a table can have several alternate keys. The primary key is usually the type of key that other tables, called child tables, refer to when a foreign key field in those other tables need a relational identifier.
Starting in Microsoft Dynamics AX 2012 the primary key for every new table is always enforced by an index that has exactly one field. The one field is usually an incremented number or a completely meaningless number that is generated by the system. For new tables the default is a primary key based on the RecId field. This is represented as the surrogate key in the user interface.
The following table describes the PrimaryIndex property and other major properties that are related to keys.
Property | Description |
|---|---|
PrimaryIndex | The drop-down list contains the surrogate key plus every index on the table that has its AlternateKey property set to Yes. |
CreateRecIdIndex | This property controls whether the system creates a unique index on the RecId field. The default value is Yes. This is the basis of the surrogate key. No other field is added to this index, not even DataAreaId. |
ReplacementKey | The drop-down list contains every index that has its AlternateKey property set to Yes. You might change the default blank value to an index whose field values within each record provide a name or other moniker that is meaningful to people. If a ReplacementKey is chosen, its fields can appear on forms to helpfully identify each record. The ReplacementKey should be a set of fields that represent the natural key. |
ClusterIndex | The ClusterIndex value is given to the underlying Microsoft SQL Server database system as a performance tuning choice. This choice generally controls the physical sequence in which the records are stored in the underlying database. |
Alternate Key
A table can have several alternate keys. Any one alternate key can switch to being the primary key, if the alternate key is comprised of only one field.
A table can reference the alternate key of another table. However, it is more common for a table to reference the primary key of another table. As an option, an alternate key can be chosen as the ReplacementKey of a table.
In practice each alternate key relies on a unique index for its implementation and enforcement. However, a unique index alone does not make an alternate key. The AlternateKey property must be set to Yes to make a unique index be an alternate key.
The following table describes properties on the AOT node for an index.
Comments
Post a Comment