Determinants and Their Role in a Database

Determinants identify values assigned to other attributes

Young database administrator working at desk

Hero Images / Getty Images

A determinant in a database table is an attribute that can be used to determine the values assigned to other attributes in the same row. By this definition, any primary key or candidate key is a determinant, but there may be determinants that are not primary or candidate keys.

For example, a company might use a table with the attributes <Employee_id>, <First_name>, <Last_name> and <Date_of_Birth>.

Employee_id First_name Last_name Date of Birth


Megan Brown 01/29/1979
234 Ben Wilder 02/14/1985
345 Megan Chowdery 2/14/1985
456 Charles Brown 07/19/1984

In this case, the field <Employee_id> determines the remaining three fields. The name fields do not determine the <Employee_id> because the firm may have employees that share the same first or last name. Similarly, the <Date_of_Birth> field does not determine the <Employee_id> or the name fields because employees may share the same birthday.

Determinant Relationships to Database Keys

In this example, <Employee_id> is a determinant, a candidate key, and also a primary key. It's a candidate key because when the entire database is searched for 234, the row containing the information about Ben Wilder appears and no other record is shown. Another candidate key occurs when you search the database by the information in three columns; <First_name>, <Last_name> and <Date_of_Birth>, which also retrieves the same result. 

The <Employee_id> is the primary key because of all the combinations of columns that can be used as a candidate key, it is the easiest column to use as the primary reference to this table. Also, <Employee_id> is guaranteed to be unique to this table, no matter how many other employees there are, as opposed to the information in other columns.