什么是 MySQL 中的外码?
zvvq好,好zvvq
外码(Foreign Key)是 MySQL 中的一种数据完整性约束,用于确保不同表之间的行具有有效且一致的关系。它通过引用另一个表(主表)中的主键列来实现。 内容来自samhan
外码如何工作?
当在子表中创建外码时,它会引用主表中的主键列。当向子表中插入一条记录时,外码列的值必须匹配主表中现有的主键值。 zvvq好,好zvvq
完整性:外码约束可确保子表中引用的数据始终在主表中存在。 级联删除:当主表中的记录被删除时,可以级联删除子表中所有相关记录,从而保持表之间的关系完整性。 级联更新:当主表中的主键值更新时,可以级联更新子表中所有相关记录,从而保持一致性。创建外码 内容来自zvvq,别采集哟
使用以下语法创建外码:
本文来自zvvq
1 本文来自zvvq
2 copyright zvvq
ALTER TABLE 子表 内容来自samhan
ADD FOREIGN KEY (外码列) REFERENCES 主表(主键列); zvvq好,好zvvq
示例 zvvq好,好zvvq
假设我们有两个表:订单和订单明细。订单明细表有一个外码 order_id,它引用 订单表中的主键 id。
内容来自samhan666
1
2
内容来自zvvq,别采集哟
3 zvvq好,好zvvq
4
5 本文来自zvvq
6
7
8
9 copyright zvvq
10
11
12 内容来自zvvq
CREATE TABLE 订单 (
zvvq
id INT PRIMARY KEY,
copyright zvvq
客户名称 VARCHAR(255)
); 内容来自zvvq
CREATE TABLE 订单明细 (
zvvq.cn
id INT PRIMARY KEY,
copyright zvvq
order_id INT, 本文来自zvvq
产品名称 VARCHAR(255),
zvvq好,好zvvq
数量 INT,
FOREIGN KEY (order_id) REFERENCES 订单(id)
); zvvq好,好zvvq
当向 订单明细表插入记录时,order_id 必须对应于 订单表中的现有 id 值。这确保了订单明细始终与有效的订单关联。 内容来自zvvq
以上就是mysql中外码是什么的详细内容,更多请关注其它相关文章!
内容来自samhan666