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 foregn key if the primary key is in a different column in the _same_ table?] (2005-01-14)