gpt4 book ai didi

Mysql:用外键删除两个表中的行

转载 作者:行者123 更新时间:2023-11-29 01:09:45 25 4
gpt4 key购买 nike

我有两个包含数据的表。我想删除两个表中的行。但是我在它们之间有外键。我该怎么做?

 departure
id departure_date
1 2016-09-29
2 2016-09-30

departure_time
id departure_id (fk)
1 1
2 2

最好的办法是使用一个查询来删除所有行,并同时删除两个表中的行。有没有办法在不删除约束/FK 的情况下执行此操作?

在这个例子中,假设我想删除从日期 2016-09-30 开始的所有出发

(删除departure: id 2和departure_time: id: 2)

最佳答案

请试试这个,希望它会有所帮助。

DELETE FROM departure, departure_time
USING departure
INNER JOIN departure_time
WHERE departure_date = '2016-09-30'
AND departure_time.id = departure.id

或者

DELETE FROM departure, departure_time
USING departure
INNER JOIN departure_time
WHERE departure_date = '2016-09-30'
AND departure_time.departure_id = departure.id

或者您可以使用 ON DELETE CASCADE 它将自动为您工作。

关于Mysql:用外键删除两个表中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39768995/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com