外键是表中的某一列,它引用到另一个表的主键。
SQL中外键的取值:空值或参照的主键值。
外键规则:
1.插入非空值时,主键表中没有这个值,则不能插入。
2.更新时,不能改为主键表中没有的值。
3.外键可能与它引用的主键名称不同。
4.外键的值可以是NULL,即使主键值不可为NULL。
5.外键值不需要唯一。
创建在结构内的键被成为约束。
带有外键的表:
第一范式,或 1NF:
规则一: 数据列只包含具有原子性的值
规则二:没有重复的数据组
组合键就是由多个数据列构成的主键,组合各列后形成具有唯一性的键。
部分函数依赖是指,非主键的列依赖于组合主键的某个部分(但不是完全依赖于组合主键)
传递函数依赖:任何非键列与另一个非键列有关联
第二范式,或 2NF:
规则一:符合1NF
规则二:没有部分函数依赖性
第三范式,或3NF:
规则一:符合2NF
规则二:没有传递函数依赖性