外键可以关联数据库中的两张表,其对应的是数据库中的参照完整性。一张表的外键可以为空,也可以不为空,当外键不为空时,则每一个外键的值必须等于另一张表的主键的某个值。一张表的外键可以不是本表的主键,但其对应着另一张表的主键。在一张表中定义了外键之后不允许删除另一张表中具有关联关系的行数据。
由外键引申出两个概念,分别是主表(父表)和从表(子表)。
·主表(父表):两个表具有关联关系时,关联字段中主键所在的表为主表(父表)。
·从表(子表):两个表具有关联关系时,关联字段中外键所在的表为从表(子表)。
1.语法格式
创建外键的语法格式如下:
- [CONSTRAINT 外键名] FOREIGN KEY 字段1 [, 字段2, 字段3, …]
- REFERENCES 主表名 主键列1 [, 主键列2, 主键列3, …]
·外键名:定义外键时为数据表指定的外键名称。在同一张数据表中,外键的名称必须唯一。也就是说,在同一张数据表中,不能有相同名称的外键名称。
·FOREIGN KEY:指定外键包含哪些字段,可以是一个字段,也可以是多个字段的组合。