mysql怎么设置外键-mysql教程

admin1年前 (2024-06-05)基础运维知识329
点击下载TXT

如何在 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版本号怎么查询-mysql教程

如何查询 MySQL 版本号 直接查询 最直接的方法是使用 SELECT VERSION() 语句: SELECT VERSION();登录后复制 此语句将返回 MySQL 服务器的完整版本号,包括...

mysql停止服务怎么打开-mysql教程

如何重启 MySQL 服务 1. 确认 MySQL 服务已停止 通过命令 sudo systemctl status mysql 检查服务状态。 2. 启动 MySQL 服务 使用命令 sudo s...

mysql安装后怎么没图标-mysql教程

MySQL 安装后为什么没有图标? MySQL 安装后没有图标可能是由于以下原因: 1. 缺少桌面快捷方式 安装过程中没有创建桌面快捷方式。 卸载后,手动删除了快捷方式。 2. 没有关联文件扩展...

mysql怎么使用gtid-mysql教程

如何使用 MySQL 的 GTID GTID 是什么? 全球事务标识符 (GTID) 是一种机制,用于识别和跟踪 MySQL 事务在复制组中的执行顺序。GTID 解决了复制过程中数据不一致的问题,确...

mysql怎么保留两位小数-mysql教程

MySQL中保留两位小数 在MySQL中,可以通过ROUND()函数来保留小数点后两位数字。该函数的语法如下: ROUND(x, d)登录后复制 其中: x是要舍入的数字 d是要舍入到的位数(小数...

mysql触发器怎么创建-mysql教程

MySQL 触发器创建指南 如何创建 MySQL 触发器? 在 MySQL 中创建触发器可以通过以下步骤: 1. 定义触发器 CREATE TRIGGER [触发器名称] BEFORE/AFTER...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。