Question: a foreign key must always be a candidate key?
Answer: 4 Answers. In the relational model of data, a foreign key must reference a candidate key. In almost all SQL dbms, a foreign key must reference a candidate key. ... However, the system does not enforce a requirement that the referenced columns be UNIQUE or be declared NOT NULL.