Skip to content
Related Articles

Related Articles

Difference between Primary Key and Foreign Key

Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 28 Oct, 2022
Improve Article
Save Article

Primary Key: A primary key is used to ensure that data in the specific column is unique. A column cannot have NULL values. It is either an existing table column or a column that is specifically generated by the database according to a defined sequence. 

Example: Refer the figure – 
STUD_NO, as well as STUD_PHONE both, are candidate keys for relation STUDENT but STUD_NO can be chosen as the primary key (only one out of many candidate keys). 

Foreign Key: 
A foreign key is a column or group of columns in a relational database table that provides a link between data in two tables. It is a column (or columns) that references a column (most often the primary key) of another table. 

Example: Refer the figure – 
STUD_NO in STUDENT_COURSE is a foreign key to STUD_NO in STUDENT relation. 

Figure:

 

Let’s see the difference between Primary Key and Foreign Key:

S.NO. PRIMARY KEY FOREIGN KEY
1 A primary key is used to ensure data in the specific column is unique. A foreign key is a column or group of columns in a relational database table that provides a link between data in two tables.
2 It uniquely identifies a record in the relational database table. It refers to the field in a table which is the primary key of another table.
3 Only one primary key is allowed in a table. Whereas more than one foreign key are allowed in a table.
4 It is a combination of UNIQUE and Not Null constraints. It can contain duplicate values and a table in a relational database.
5 It does not allow NULL values. It can also contain NULL values.
6 Its value cannot be deleted from the parent table. Its value can be deleted from the child table.
7 It constraint can be implicitly defined on the temporary tables. It constraint cannot be defined on the local or global temporary tables.
My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!