SQL 中外键是一种数据库约束,确保子表记录与主表相关记录关联。要设置外键,需要:1. 确定主表和子表;2. 选择相应列作为父列和子列;3. 使用 ALTER TABLE 语句创建外键约束,指定子列、主表、父列以及附加选项(如果需要)。例如,ALTER TABLE 订单 ADD FOREIGN KEY (产品 ID) REFERENCES 产品(产品 ID) ON DELETE CASCADE ON UPDATE CASCADE。

SQL 数据库中设置外键
1. 什么是外键?
外键是一种数据库约束,它用于确保子表中的记录与主表中的相关记录具有关联性。它本质上将两个表链接在一起,确保数据的完整性和一致性。
2. 如何设置外键?
在 SQL 中,使用 FOREIGN KEY 约束创建外键。以下步骤说明了如何:
- 确定主表和子表:确定包含父记录的主表和包含子记录的子表。
- 选择相应列:在主表中选择用于创建外键的列(称为父列),在子表中选择与父列相关联的列(称为子列)。
- 创建外键约束:使用以下语法在子表中创建外键约束:
<code class="sql">ALTER TABLE 子表 ADD FOREIGN KEY (子列) REFERENCES 主表(父列)</code>
3. 附加选项
以下附加选项可用于自定义外键约束:
-
ON DELETE [动作]:指定在从主表中删除记录时子表中相应记录的操作(例如,CASCADE、SET NULL、RESTRICT)。 -
ON UPDATE [动作]:指定在主表中更新记录时子表中相应记录的操作(例如,CASCADE、SET NULL、RESTRICT)。 -
NOT NULL:确保子列的值不能为 NULL。
4. 示例
以下示例在子表 订单 中创建一个外键约束,该约束引用主表 产品 中的 产品 ID 列:
<code class="sql">ALTER TABLE 订单 ADD FOREIGN KEY (产品 ID) REFERENCES 产品(产品 ID) ON DELETE CASCADE ON UPDATE CASCADE</code>
在这个示例中,产品 ID 列是主表 产品 中的父列,产品 ID 列是子表 订单 中的子列。如果从 产品 表中删除一条记录,则会自动从 订单 表中级联删除所有相关记录。同样,如果更新 产品 表中的 产品 ID 值,则 订单 表中相关记录的 产品 ID 值也会自动更新。










