Types of Keys In DBMS

7 Types of Keys in DBMS With Examples – A Simple Guide

New with database and don’t know about the types of keys in DBMS? If yes, then this blog is going to help you in order to explore the types of keys in DBMS

DBMS stands for Database Management System. It handles data insertions, updates, retrievals, and queries. Some of the most used DBMSs are MySQL, Oracle, Microsoft Access, RDBMS, and many more. DBMS uses keys that are used in a place that defines the relationships among the tables.

Keys are attributes that represent the relationship between the columns of a database. In this article, you will be clear on the topics related to the keys in DBMS. If you are learning DBMS and struggling with the types of keys in DBMS then stay tuned with this blog

Purpose of Using Keys in DBMS

We use keys to open or pick a particular lock, the same way keys work in DBMS. You can retrieve and identify any unique column or row from the table in the database.

Getting a record from a single table is easy, as compared to when you have to find a record from a complete database. There can be hundreds of records in a table in the database. The concept of keys is very helpful in these kinds of situations.

There are 7 keys in DBMS, namely: Primary key, candidate key, alternate key, super key, foreign key, unique key, and composite key. You will read about these types of keys in DBMS with all the details in the next paragraph.

See also  Swift vs Java | Most Valuable Differences You Should Know

7 Types of Keys in DBMS And Their Functions

1. Primary Key

Primary key is one of the most important keys used in the DBMS. There can only be one primary key in a table. So we can say that the primary key is used to identify any record uniquely.

Name  Roll__No  Age

Here Roll_No acts as the primary key, as it can be used to identify a particular record. It is working as a serial number here so this kind of primary key is known as the auto-increment primary key. You might be wondering if the name column can also act as a primary key.

Well, there can be two people with the same name, so we cannot use a name as a primary key. The primary key can never be null and duplicated. Also, it cannot be updated or modified if it is referred to by any foreign key.

2. Foreign Key

Foreign key attribute is used to link two different tables together. It is used for cross-reference. We use a foreign key to main the data integrity. A foreign key refers to the candidate key of a table.                                                                            





The Subject in Student_info table and Subject in Student_marks are linking two tables. This table shows how both tables are linked together. You will learn about the candidate key in a further section.

3. Unique Key

 A unique key is an attribute or a group of attributes that can help you identify a record uniquely. You might be wondering, since primary and unique keys both identify a record in a similar way, aren’t they the same?

See also  Best Strategies For Visual Learners You Must Follow in 2023

Yes, they work in similar ways, but there is a difference between them. As we have discussed above, the primary key cannot take null values, but the unique key can accept a null value. Yet you don’t get many options for it, you can only enter a single null value.


In the above table, both Roll_no and Phone_no columns can have unique values. But Phone_no is unique, while Roll_no is primary. This is because it is possible that a student won’t have a phone number, so there we can put null.

4. Candidate Key

A candidate key is a group of attributes that identify a record uniquely. The primary key is a part of the candidate key. In simpler words, a candidate key is the group of all the unique keys that can act as a primary key.

Since there can be only one primary key per table, there can be many candidate keys possible. One of these candidate keys is a primary key, and the remaining others can be called unique keys. Yet, you cannot add null values to these candidate keys.


Phone and Roll_No both columns will have unique and non-null values. But one of them has to become a primary key and another one a candidate key.

5. Super Key

A super key is a key that is used to identify a record uniquely from a database. It is actually a superset of candidate keys. Including all the possible and potential primary keys. It supports null values. All candidate keys are super keys but the reverse is not true.

NameEmp IdPhone

Here Emp Id and Mobile No are both super keys. Both of these columns are potential primary keys. 

See also  How to Stay Focused While Studying | Top Tips to Study Better

6. Alternate Key

Since there can be many super keys but only one primary key. The remaining ones are called alternate keys. So we can retrieve and identify any record from the database uniquely using an alternate key too. An alternate key is also a potential primary key of the database.


Here Roll_No acts as a primary key, and Phone is an alternate key. If we had used Phone as a primary key, then Roll_No could have been an alternate key.

7. Composite Key

A group of two or more columns uniquely identifying a record is a composite key. The composite key is not necessarily composed of all unique columns. They together will retrieve and point to a unique record from the database.


In the above table Name and Age columns act as a composite key. Name Arya, with Age 21, will be identified in the table. If there is a case with 2 same values in 2 different columns, then you can add a third column to your composite key.

Also, Read!!

Top 7 Easy & interesting DBMS Project Ideas for Beginners


Learning about the keys is essential if you are learning about DBMS. Keys will help you if you work with databases or are about to work on them. The concept of keys looks complicated and repetitive, but all these keys are related in some way or another.

Follow the blog to clarify all your confusion about all the types of keys in DBMS.

Frequently Asked Questions

What are the types of DBMS?

There are four major types of DBMS (DataBase Management Systems). 
Relational database.
Object-oriented database.
Hierarchical database.
Network database.

Can we use DBMS in real life?

Yes, we can use DBMS in real life to store the monthly postpaid bills and call details. All transactions and purchases of items with credit cards are only possible with DBMS. Security and privacy of all the transaction information are only possible with the help of Database Management systems. 


Leave a Comment

Your email address will not be published. Required fields are marked *