主表(父表)
拥有主键的表,其主键与其他表相关联。
从表(子表)
以主表的主键值作为外键,可以通过外键与主表进行关联查询。
外键位于从表之上,制约主表。
始终要清楚的是,无论是外键还是主键,指的都是某个表的一个(当然主键可以是多个)字段(或者叫列)。
详细描述
如图有两张表,classId 是 T_Student 的外键,是 T_class 表的主键, 如果我们要删除T_class 表中 classId 为1的字段,程序是会报错的,因为 t_student 表中有数据和 classId 为1的字段关联了,是不能删除的,这样子就保证了数据的一致性和完整性。
那怎么才能删除呢?
答: 需要先删除 T_student 表中 classId 为1的两个字段。
如何给表添加外部关键字
在MySQL中给表中字段添加外键约束的语法规则如下:
CONSTRAINT 外键名 FOREIGN KEY 字段名 REFERENCES 主表名(主键名)
例子来源于头歌实验平台,仅作引用。