- 我的电脑系统:Windows 10 64位
- SQL Server 软件版本: SQL Server 2014 Express
外键的具体定义
如果一个表中的若干个字段是来自另外若干个表的主键或唯一键,则这若干个字段就是外键。(我们讲多对多的时候,一个表里面就有两个外键。)
设计外键要注意的问题
- 外键通常是来自另外表的主键而不是唯一(
unique
)键,因为唯一键可能为null
。 - 外键不一定是来自另外的表,也可能来自本表的主键
- 含有外键的表叫外键表,外键字段来自的那一张表叫做主键表
问题:
Q: 先删除主键表还是先删除外键表?
A: 先删除外键表,再删主键表。如果先删除主键表,会报错,因为这会导致外键表中的数据引用失效。