什么是 MySQL 外键?
MySQL 外键是一种数据库关系,它在两个表之间创建了逻辑连接,以确保数据的完整性。它指定一个表中的列与另一个表中的主键列相对应。
如何使用外键?
要创建外键,请使用以下语法:
<code class="sql">ALTER TABLE child_table ADD FOREIGN KEY (foreign_key_column) REFERENCES parent_table (primary_key_column);</code>
其中:
child_table是包含外键的表。
foreign_key_column是
child_table中的外键列。
parent_table是外键所引用的表。
primary_key_column是
parent_table中的主键列。
外键的作用
外键的主要作用是:
维护数据完整性:它防止向child_table中插入或更新不属于
parent_table中任何行的值。 级联更新和删除:当对
parent_table中的主键列进行更新或删除操作时,外键可以自动更新或删除
child_table中相应的外键值。 数据规范化:外键有助于将数据分解成更小的、更容易管理的表,同时保持数据一致性。
外键约束
外键创建后,它会自动实施以下约束:
参照完整性:child_table中的外键值必须在
parent_table中的主键值列表中。 级联更新:如果
parent_table中的主键值被更新,
child_table中相应的外键值也会被更新。 级联删除:如果
parent_table中的主键值被删除,
child_table中相应的外键值也会被删除。
注意:
外键只能引用主键或唯一索引列。 外键可以为NULL,以允许
child_table中存在不属于任何
parent_table行的值。 外键关系可以是一对一、一对多或多对多。
