📜  alter table add on delete cascade mysql (1)

📅  最后修改于: 2023-12-03 15:13:18.282000             🧑  作者: Mango

MySQL 中的 On Delete Cascade

在 MySQL 中,可以使用 ALTER TABLE 语句来为一个已有的表添加新的约束条件。其中之一就是 ON DELETE CASCADE 约束条件。

什么是 On Delete Cascade?

ON DELETE CASCADE 用于定义在删除主表中具有外键关系的行时,将如何处理相关的从表。如果主表中的行被删除,则所有相关的从表中的行也将自动被删除。

添加 On Delete Cascade

在已有的表中添加 ON DELETE CASCADE 约束条件,可以使用以下语法:

ALTER TABLE 表名 
ADD FOREIGN KEY (列名) REFERENCES 主表名(主键) ON DELETE CASCADE;

其中,表名 是要添加约束条件的表名,列名 是要添加外键的列名,主表名 是主表的名称,而主键则是主表中的一个列名。

示例

下面的示例展示了如何在 orders 表中添加一个 ON DELETE CASCADE 约束条件,以便在删除 customers 表中的行时,自动删除 orders 表中的行。

ALTER TABLE orders 
ADD FOREIGN KEY (customer_id) REFERENCES customers(id) ON DELETE CASCADE;
总结

在 MySQL 中,使用 ON DELETE CASCADE 约束条件可以轻松地自动删除从表中的行。它为开发人员提供了方便,可以快速编写出高效的 SQL 语句。使用 ALTER TABLE 语句可以轻松在已有的表中添加此约束条件,进一步提高了代码的灵活性。