如何在 MySQL 中创建外键
MySQL 中的外键是用来强制执行数据完整性的约束,确保相关表之间的一致性。创建外键的过程如下:
1. 创建数据表
首先,创建两个数据表,一个作为父表(包含主键列),另一个作为子表(包含外键列)。
2. 定义外键列
在子表中,使用
FOREIGN KEY约束定义外键列。该约束将引用父表的主键列。约束的语法如下:
<code class="sql">FOREIGN KEY (子表外键列) REFERENCES 父表(父表主键列)</code>
3. 指定级联操作(可选)
当父表中的数据更新或删除时,可以通过指定级联操作来定义对子表中相关记录的处理方式。常用的级联操作有:
CASCADE: 当父表记录更新或删除时,自动更新或删除子表中相关的记录。 RESTRICT: 当父表记录更新或删除时,禁止对子表中相关的记录进行操作。 SET NULL: 当父表记录更新或删除时,将子表中相关记录的外键列设置为 NULL。4. 添加约束
定义好外键列后,使用
ALTER TABLE语句添加外键约束。语法如下:
<code class="sql">ALTER TABLE 子表 ADD FOREIGN KEY (外键列) REFERENCES 父表(主键列)</code>
例如:
假设有父表
Customers和子表
Orders,其中
Customers表的主键列是
customer_id,
Orders表外键列是
customer_id。创建外键约束的语句如下:
<code class="sql">ALTER TABLE Orders ADD FOREIGN KEY (customer_id) REFERENCES Customers(customer_id)</code>
通过创建外键,可以确保
Orders表中的
customer_id始终引用
Customers表中的有效
customer_id,从而保证数据完整性和一致性。
