Jump to content

Composite key: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
ed
No edit summary
Line 1: Line 1:


In [[Data modeling|database design]], a '''compound key''' is a key that consists of two or more simple keys that uniquely identify an entity occurrence. A '''simple key''' is one that has only one attribute. Compound keys may be composed of other unique simple keys, but may not include another compound key. Each attribute, which makes up a ''compound key'', is also a simple key in its own right.
In [[Data modeling|database design]], a '''compound key''' is a key--that is, a minimal superkey--that consists of two or more ''simple keys'' that uniquely identify an entity occurrence. A '''simple key''' is a key that has only one attribute. Compound keys may be composed of other unique simple keys, but may not include another compound key. Each attribute, which makes up a ''compound key'', is also a simple key in its own right.


A '''composite key''' contains at least one compound key and one more attribute. Composite keys, unlike ''compound key''s may also include simple keys and non-key attributes.
A '''composite key''' contains at least one compound key and one more attribute. Composite keys, unlike ''compound key''s may also include simple keys and non-key attributes.

Revision as of 15:11, 5 September 2016

In database design, a compound key is a key--that is, a minimal superkey--that consists of two or more simple keys that uniquely identify an entity occurrence. A simple key is a key that has only one attribute. Compound keys may be composed of other unique simple keys, but may not include another compound key. Each attribute, which makes up a compound key, is also a simple key in its own right.

A composite key contains at least one compound key and one more attribute. Composite keys, unlike compound keys may also include simple keys and non-key attributes.

Example

An example might be an entity that represents the modules each student is attending at University. The entity has a studentId and a moduleCode as its primary key. Each of the attributes that make up the primary key are simple keys because each represents a unique reference when identifying a student in one instance and a module in the other.

In contrast, using the same example, imagine we identified a student by their firstName + lastName. In our table representing students on modules our primary key would now be firstName + lastName + moduleCode. Because firstName + lastName represent a unique reference to a student, it is not a simple key, it is a combination of attributes used to uniquely identify a student. Therefore the primary key for this entity is a composite key.

No restriction is applied to the attributes regarding their (initial) ownership within the data model. This means that any one, none, or all, of the multiple attributes within the compound key can be foreign keys. Indeed, a foreign key may itself be a compound key.

Compound keys almost always originate from attributive or an associative entity (tables) within the model, but this is not an absolute.

See also