from
The Free On-line Dictionary of Computing (8 July 2008)
foreign key
<database> A {column} in a database {table} containing values
that are also found in some {primary key} column (of a
different table). By extension, any reference to entities of
a different type.
Some {RDBMSs} allow a column to be explicitly labelled as a
foreign key and only allow values to be inserted if they
already exist in the relevant primary key column.
[Is it still a foreign key if the primary key is in a different
column in the __same__ table?]
(2005-01-14)