SQLServer Foreign Keys
Foreign Keys explained
Foreign Keys constraints ensure data integrity, by enforcing that values in one table must match values in another table.
An example of where a foreign key is required is: In a university, a course must belong to a department. Code for the this scenario is:
Insert values with the following statement:
The following table will contain the information of the subjects offered by the Computer science branch:
(The data type of the Foreign Key must match the datatype of the referenced key.)
The Foreign Key constraint on the column Dept_Code allows values only if they already exist in the referenced table,
Department. This means that if you try to insert the following values:
the database will raise a Foreign Key violation error, because CS300 does not exist in the Department table. But when you try a key value that exists:
then the database allows these values.
A few tips for using Foreign Keys
.A Foreign Key must reference a UNIQUE (or PRIMARY) key in the parent table.
.Entering a NULL value in a Foreign Key column does not raise an error.
.Foreign Key constraints can reference tables within the same database.
.Foreign Key constraints can refer to another column in the same table (self-reference).