如何在 MySQL 数据库中实现级联删除

在 MySQL 数据库中实现级联删除,可以通过设置外键约束和触发器来实现,下面是详细的步骤:,1、创建表结构,我们需要创建两个表,一个是父表,另一个是子表,父表中的某个字段作为子表的外键。,我们创建两个表:
students(学生)和
courses(课程)。
students 表中有一个
course_id 字段,它是
courses 表中
id 字段的外键。,2、添加数据,向
courses 表中插入一些课程数据:,向
students 表中插入一些学生数据,并关联到相应的课程:,3、删除数据,现在,当我们尝试删除一个课程时,与之关联的学生数据也会被自动删除,这是因为我们在创建
students 表时设置了外键约束和级联删除。,删除
courses 表中的
id 为 1 的课程:,此时,与该课程关联的学生数据(张三)也会被自动删除。,
,CREATE TABLE students ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255) NOT NULL, course_id INT, FOREIGN KEY (course_id) REFERENCES courses(id) ON DELETE CASCADE ); CREATE TABLE courses ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(255) NOT NULL );,INSERT INTO courses (name) VALUES (‘数学’), (‘英语’), (‘物理’);,INSERT INTO students (name, course_id) VALUES (‘张三’, 1), (‘李四’, 2), (‘王五’, 3);,DELETE FROM courses WHERE id = 1;,

版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《如何在 MySQL 数据库中实现级联删除》
文章链接:https://zhuji.vsping.com/468812.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。