20 July 2010
A Candidate Key is one that can identify each row of a table uniquely. Generally a candidate key becomes the primary key of the table. If the table has more than one candidate key, one of them will become the primary key, and the rest are called Alternate Keys. So, An Alternate Key is any candidate key that is not the primary key. Alternate keys are sometimes referred to as secondary keys. A Foreign Key is a field in a relational table that matches the primary key column of another table. The foreign key can be used to cross-reference tables.