Mysql 使用复合主键在连接台上设置外键约束

Mysql 使用复合主键在连接台上设置外键约束,mysql,phpmyadmin,junction-table,Mysql,Phpmyadmin,Junction Table,我有一个连接表,存储测试和测试中的问题之间的关系,testFK和questionFK设置为复合主键,以防止重复条目 连接表: +--------+------------+ | testFK | questionFK | +--------+------------+ | 7 | 1 | +--------+------------+ | 7 | 2 | +--------+-----

我有一个连接表,存储测试和测试中的问题之间的关系,
testFK
questionFK
设置为复合主键,以防止重复条目

连接表:

    +--------+------------+
    | testFK | questionFK |
    +--------+------------+
    |    7   |      1     |
    +--------+------------+
    |    7   |      2     |
    +--------+------------+
    |    7   |      3     |
    +--------+------------+
    |    8   |      4     |
    +--------+------------+
    |    8   |      5     |
    +--------+------------+
    |    8   |      6     |
    +--------+------------+
我想做什么:

测试表
中删除
testID
后,我希望从
连接表
中删除
testFK=8
的所有行

问题:

phpmyadmin不允许我将
testFK
设置为
测试表中
testID
外键

处理这种情况的最佳方法是什么

谢谢你的意见

更新: 创建代码:

CREATE TABLE IF NOT EXISTS `junc_test_question` (
  `testFK` int(11) NOT NULL,
  `questionFK` int(11) NOT NULL,
  `ordinal` int(3) NOT NULL DEFAULT '1',
  PRIMARY KEY (`testFK`,`questionFK`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

可能是这样回答的:@MortenSickel我在尝试此操作时遇到了相同的错误:#1452-无法添加或更新子行:外键约束失败(
db\u assessment
,约束
testFK
外键(
testFK
)引用
test
testID
)请发布您的创建表代码您可以为此创建触发器可能是这样回答的:@MortenSickel我在尝试此操作时遇到了相同的错误:#1452-无法添加或更新子行:外键约束失败(
db#u assessment
sql-2510_69
,约束
testFK
外键(
testFK
)参考
test
testID
)发布您的创建表代码请您为其创建触发器请解释您的代码如何提供问题的解决方案。这有助于OP理解和应用您的代码,也有助于未来的搜索者。当条目删除删除\u测试\u表时,请删除与测试\u表相关的所有条目。请解释您的代码如何提供问题的解决方案。这有助于OP理解和应用您的代码,也有助于未来的搜索者。当条目删除删除\u test\u表时,它将删除与test\u表连接的所有条目
DROP TRIGGER remove_test_table
GO
CREATE TRIGGER remove_test_table
FOR DELETE
AS 
DELETE FROM test_table WHERE testFK IN (SELECT testFK FROM deleted);
GO