Faculty Of Computer Science
Database Concept
Lecturer: Lutfullah Haqnesar
Chapter Five
Database Keys
Agenda
Database Keys
Primary key
Candidate key
Super key
Foreign key
Alternate key
Composite key
Artificial key
Keys
• Keys play an important role in the relational database.
• It is used to uniquely identify any record or row of data from the table.
• It is also used to establish and identify relationships between tables.
• For example, ID is used as a key in the Student table because it is
unique for each student.
Types of keys
1. Primary key
• It is the first key used to identify only one instance of an entity uniquely.
• The key which is most suitable from the lists becomes a primary key.
• In the EMPLOYEE table, ID can be the primary key since it is unique for
each employee.
• In the EMPLOYEE table, we can even select License_Number and
Passport_Number as primary keys since they are also unique.
Primary Key
2. Candidate Key
• A candidate key is an attribute or set of attributes that can uniquely
identify a tuple.
• Except for the primary key, the remaining attributes are considered a
candidate key. The candidate keys are as strong as the primary key.
• For example: In the EMPLOYEE table, id is best suited for the primary
key. The rest of the attributes, like Passport_Number, License_Number,
etc., are considered a candidate key.
Candidate Key
3. Super key
• Super key is an attribute set that can uniquely identify a tuple. A super
key is a superset of a candidate key.
• For example: In the above EMPLOYEE table, for(EMPLOEE_ID,
EMPLOYEE_NAME), the name of two employees can be the same, but
their EMPLYEE_ID can't be the same. Hence, this combination can also
be a key.
Super Keys
4. Foreign Keys
• Foreign keys are the column of the table used to point to the primary
key of another table.
• Every employee works in a specific department in a company, and
employee and department are two different entities.
• So we link these two tables through the primary key of one table.
• We add the primary key of the DEPARTMENT table, Department_Id,
as a new attribute in the EMPLOYEE table.
Foreign Keys
5. Alternate Keys
• One or more attributes or a combination of attributes that uniquely
identify each tuple in a relation are called the candidate keys.
• One key is chosen as the primary key from these candidate keys, and the
remaining is termed the alternate key.
• The total number of the alternate keys is the total number of candidate
keys minus the primary key.
• If there is only one candidate key in a relation, it does not have an
alternate key.
Alternate Keys
6. Composite Keys
• Whenever a primary key consists of more than one attribute, it is
known as a composite key. This key is also known as Concatenated Key.
• For example, in employee relations, we assume that the primary key
will be composed of all three attributes, namely Emp_ID, Emp_role,
and Proj_ID in combination.
• So these attributes act as a composite key since the primary key
comprises more than one attribute.
Composite Key
7. Artificial Key
• The key created using arbitrarily assigned data are known as artificial
keys. These keys are created when a primary key is large and complex and
has no relationship with many other relations. The data values of the
artificial keys are usually numbered in a serial order.
• For example, the primary key, which is composed of Emp_ID, Emp_role,
and Proj_ID, is large in employee relations. So it would be better to add a
new virtual attribute to identify each tuple in the relation uniquely.
Keys
END OF CHAPTER