RelationalDBDesign  Tweet

Database Analysis   «Prev  Next»
Lesson 12 Concatenated primary keys
Objective Define concatenated primary keys.

Concatenated Primary Keys in a Database Table

Concatenated primary key: Also known as composite primary key is a combination of two or more column values used to define a key in a table.
Primary-key columns were discussed in the preceding lesson.
Primary-key columns contain values that uniquely identify a record within a table.
Sometimes a single column does not contain sufficient information to distinguish one record from every other record in the table.
Consider the Line Item table:
Line Item Table
Line Item Table
No single column contains enough information to set a record apart from every other record in the table, though OrderNo and CDNo are the most likely prospects.
The problem is, an order can contain more than one CD and a CD can be part of more than one order.
It is possible to create a CDOrderID column, but there is an easier solution:
Solution: Create a concatenated primary key.
You should create a concatenated primary key based on the existing columns in the database table.
A concatenated primary key is a primary key made up of two or more columns.
In the case of the Line Item table, each record is uniquely identified by the combined values of
  1. the OrderNo and
  2. CDNo
columns located at the extreme left of the table.
We are assuming a particular CD will not occur more than once in an order.

Concatenated primary keys need to follow two additional rules:
  1. They should contain the smallest number of columns required to uniquely identify each record.
  2. The columns should not contain meaningful information. You may need to break this rule on occasion, but those circumstances are very rare.
The next lesson describes all-key relations.
All-key relation: An All-key relation is a relation in which every field is a member of the relation's primary key.

Primary Key - Quiz
Before moving on to the next lesson, click the Quiz link below to check your understanding of key columns and primary keys.
Primary Key - Quiz

Learn more about database design by studying one of the subjects below