surrogate key


surrogate key

(database)A unique primary key generated by the RDBMSthat is not derived from any data in the database and whoseonly significance is to act as the primary key.

A surrogate key is frequently a sequential number (e.g. aSybase "identity column") but doesn't have to be. Havingthe key independent of all other columns insulates thedatabase relationships from changes in data values or databasedesign and guarantees uniqueness.

Some database designers use surrogate keys religiouslyregardless of the suitability of other candidate keys.However, if a good key already exists, the addition of asurrogate key will merely slow down access, particularly if itis indexed.

Compare: intelligent key.