我正在尝试从php中1个sql查询中的3个表中删除记录。首先,我尝试了从两个表中删除记录。这是对此的查询:

DELETE pa, pr FROM pollanswers pa INNER JOIN pollresults pr ON
pa.PollQuestionId=pr.PollQuestionId WHERE pa.PollQuestionId = '123';


问题是,如果这些表之一中没有PollQuestionId,该怎么办。以及此后的其他事情如何将其与第三表集成?

谢谢。

最佳答案

您不应在一个查询中从多个表中删除。

您可以使用ON DELETE CASCADE选项在表上定义外键约束。

然后从父表中删除记录将从子表中删除记录。

检查此链接:http://dev.mysql.com/doc/refman/5.5/en/innodb-foreign-key-constraints.html

关于php - 使用内部联接从多个表中删除,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19662009/

10-10 22:05