MYSQL通过一张表ID删除两张表同时存在的数据
时间: 2023-05-22 13:05:15 浏览: 78
mysql 一条语句删除多表数据
3星 · 编辑精心推荐
可以使用MySQL的外键约束来实现这个功能,具体操作如下:
1.在两张表中都添加一个相同的外键列,比如说命名为"table_id"。
2.在一张表中定义外键,指向另一张表的主键。
3.设置外键约束,当删除一个表中的数据时,也会自动删除另一个表中相关联的数据。
示例代码:
CREATE TABLE table1 (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20),
table_id INT,
CONSTRAINT `fk_table2` FOREIGN KEY (`table_id`) REFERENCES `table2`(`id`) ON DELETE CASCADE
);
CREATE TABLE table2 (
id INT PRIMARY KEY AUTO_INCREMENT,
age INT,
table_id INT,
CONSTRAINT `fk_table1` FOREIGN KEY (`table_id`) REFERENCES `table1`(`id`) ON DELETE CASCADE
);
DELETE FROM table1 WHERE id = 1;
这会同时删除相关联的table2表中的数据。
希望这个回答能对你有所帮助。
阅读全文