在数据库和关系型数据模型中, 外码(Foreign Key)是指一个关系模式(关系R)中的属性或属性组X,它不是关系R的码(即不是主码或候选码),但X是另一个关系模式(关系S)的码(主码或候选码)。外码用于建立和加强两个关系(表)之间的链接,它提供了一种在计算机世界中描述现实世界实体间联系的手段。
例如,在数据库中,如果有一个“职工”关系和一个“部门”关系,其中“职工”关系中的“部门号”属性是“部门”关系中的主码,那么“部门号”就是“职工”关系的一个外码。
外码的概念在数据库设计中非常重要,因为它允许数据在多个关系之间保持一致性和完整性,同时支持复杂的查询和操作。通过使用外码,可以确保引用不存在的元组(记录)时,数据库系统会抛出错误,从而维护数据的引用完整性。