注册

mysql怎么设置外键

在 mysql 中设置外键只需一步:使用 alter table 语句,并在子表的列定义中添加 foreign key 约束,指定外键列和父表中被引用的列,以及联接规则(可选)。

如何在 MySQL 中设置外键

外键是一种数据库约束,它强制执行数据完整性,确保子表中的记录在父表中都有对应的记录。在 MySQL 中设置外键非常简单。

步骤:

  1. 创建外键约束:

    使用 ALTER TABLE 语句,并在子表的列定义中添加 FOREIGN KEY 约束。语法如下:

    ALTER TABLE 子表名
    ADD FOREIGN KEY (列名)
    REFERENCES 父表名 (列名)

    例如:

    ALTER TABLE 订单
    ADD FOREIGN KEY (客户ID)
    REFERENCES 客户 (客户ID)
  2. 指定联接规则(可选):

    ON DELETE 和 ON UPDATE 子句指定当父表中被引用的记录发生更改或删除时,子表中应该做什么。

    • ON DELETE CASCADE:当父记录被删除时,也级联删除子记录。
    • ON DELETE SET NULL:当父记录被删除时,将子记录中的外键列设置为 NULL。
    • ON UPDATE CASCADE:当父记录被更新时,也级联更新子记录中的外键列。
    • ON UPDATE SET NULL:当父记录被更新时,将子记录中的外键列设置为 NULL。

    例如:

    ALTER TABLE 订单
    ADD FOREIGN KEY (客户ID)
    REFERENCES 客户 (客户ID)
    ON DELETE CASCADE

需要注意的事项:

  • 父表和子表的列数据类型必须兼容。
  • 父表中的列必须是唯一索引或主键。
  • 不能删除或更新包含外键约束的列,除非先删除或更新引用它的记录。
  • 如果外键约束被删除,则数据完整性不再得到保证。

以上就是mysql怎么设置外键的详细内容,更多请关注CTO智库其它相关文章!