0

我有一个表 - 线程 - 和另一个 - 帖子。

每个线程就像一个主题,帖子是回复。如果一个话题被删除,所有相关的帖子都需要被删除。

所有帖子都有一个 id 和一个 thread_id 字段。这就是我所拥有的,只是想知道这是否正确。

ALTER TABLE `posts`
ADD CONSTRAINT `FK_threads`
ADD FOREIGN KEY(`thread_id`)
REFERENCES `threads`(`id`)
ON DELETE CASCADE
ON UPDATE CASCADE;    

这需要反过来吗,还是完全错了?

4

1 回答 1

0

几乎正确。ADD你以前不需要FOREIGN KEY

ALTER TABLE `posts`
ADD CONSTRAINT `FK_threads`
FOREIGN KEY(`thread_id`)
REFERENCES `threads`(`id`)
ON DELETE CASCADE
ON UPDATE CASCADE;

这是显示和操作 的SQLFiddleDELETE CASCADEUPDATE CASCADE

于 2013-05-07T06:33:09.063 回答