AoboSir 博客

与15年前的我比,我现在是大人;与15年后的我比,我现在还是个婴儿

SQL 数据库 学习 014 外键的具体定义 设计外键要注意的问题


  • 我的电脑系统:Windows 10 64位
  • SQL Server 软件版本: SQL Server 2014 Express

外键的具体定义

如果一个表中的若干个字段是来自另外若干个表的主键或唯一键,则这若干个字段就是外键。(我们讲多对多的时候,一个表里面就有两个外键。)

设计外键要注意的问题

  • 外键通常是来自另外表的主键而不是唯一(unique)键,因为唯一键可能为null
  • 外键不一定是来自另外的表,也可能来自本表的主键
  • 含有外键的表叫外键表,外键字段来自的那一张表叫做主键表

问题:

Q: 先删除主键表还是先删除外键表?

A: 先删除外键表,再删主键表。如果先删除主键表,会报错,因为这会导致外键表中的数据引用失效。

Comments