Definition of a Foreign Key
- A foreign Key (FK) is a constraint that references the unique primary key (PK) of another table.
Facts About Foreign Keys
- Foreign Keys act as a cross-reference between tables linking the foreign key (Child record) to the Primary key (parent record) of another table, which establishing a link/relationship between the table keys
- Foreign keys are not enforced by all RDBMS
- The concept of referential integrity is derived from foreign key theory
- Because Foreign keys involve more than one table relationship, their implementation can be more complex than primary keys
- A foreign-key constraint implicitly defines an index on the foreign-key column(s) in the child table, however, manually defining a matching index may improve join performance in some database
- The SQL, normally, provides the following referential integrity actions for deletions, when enforcing foreign-keys
- The deletion of a parent (primary key) record may cause the deletion of corresponding foreign-key records.
- Forbids the deletion of a parent (primary key) record, if there are dependent foreign-key records. No Action does not mean to suppress the foreign-key constraint.
- The deletion of a parent (primary key) record causes the corresponding foreign-key to be set to null.
- The deletion of a record causes the corresponding foreign-keys be set to a default value instead of null upon deletion of a parent (primary key) record