MYSQL:如何自动删除表中依赖于另一个表中的记录的行

标签 mysql sql database

我对mysql的经验很少,所以请原谅我的问题。

我有两个表,其中一个包含类(class),如下所示:

id  title   type    language    level

另一个包含以下部分:

lesson_id   title   content duration

每节课有 0 个或多个部分。

现在我的网页中有一个功能可以让我删除类(class)。

1 - 如何使各部分依赖于类(class)记录?

我希望通过删除类(class)记录,数据库会自动知道它必须删除属于该类(class)的所有部分字段。

最佳答案

更改节表并将 Lesson_id 定义为引用类(class)表的外键,并将其定义为“删除级联”。

ALTER TABLE sections
ADD FOREIGN KEY fk_lesson(lesson_id)
REFERENCES lessons(id)
ON DELETE cascade;

这样,当您从类(class)表中删除一行时,就会删除部分表中的所有行。

关于MYSQL:如何自动删除表中依赖于另一个表中的记录的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57017397/

相关文章:

mysql - SELECT DISTINCT ON 表达式必须匹配初始 ORDER BY 表达式

mysql - 大型 MySQL 表

java - Spring boot JPA + MySQL 抛出错误

sql - 测试 MySQL 表中是否存在行的最佳方法

sql - T-SQL 获取最后一个日期时间记录

php - 使用mysql限制对结果进行分页

MySQL使用左连接时重复列值

sql - 你能解释一下下面的 SQL (postgres) 代码吗?

database - 如何在数据库中创建嵌套类别?

java - 使用 JDBC 和 MySQL 更新大型结果集