我有组,每个组都有与之关联的联系人。当用户删除一个组时,如果该组不为空,那么它会提醒他们,如果该组中的所有联系人都继续,将会被删除。无论如何,所以我的问题是设置该功能。从另一个表中删除特定行时删除表中的行
我试图找出如何删除属于该组并删除该组以及所有联系人。
在我继续之前,我想知道,但有没有一种通过外键做到这一点的自动化方式?
那么,如果没有它的确定,这是我的查询,但SQL Workbench是抛出以下错误
DELETE c
FROM `list_`.`contacts` AS c
INNER JOIN `list_`.`groups` AS g ON c.group_id = g.id
WHERE g.group = 'School'
AND c.user_id = 2;
错误:
Error Code: 1046 No database selected
真的很困惑在这里,也是我自己也尝试c.*
您正在寻找级联删除可能('上delete') – vittore 2010-10-17 04:16:55
你尝试过'DELETE FROM ...'? – vittore 2010-10-17 04:22:47
CREATE TABLE触点 ( ID SMALLINT UNSIGNED NOT NULL PRIMARY KEY, 描述VARCHAR(40), 外键(GROUP_ID)参考文献基团(ID) ON DELETE CASCADE ON UPDATE CASCADE); – vittore 2010-10-17 04:24:40