我有一张主桌叫 book
带字段 id_book
(主、唯一、自动递增)和 name
. 我有一张叫 tag
带字段 book_id
以及 tag
每本书可以有许多标签。我希望当我删除一本书时,所有的标签也被删除。
我试过这个:
ALTER TABLE tag
ADD FOREIGN KEY (book_id)
REFERENCES book(id_book)
ON UPDATE CASCADE
ON DELETE CASCADE
我知道我以前在其他项目中使用过这个sql块,它很管用,但是现在它似乎不管用了,我不知道为什么。如果我删除一本书,标签将不会被删除。
1条答案
按热度按时间r1zk6ea11#
我看不出sql本身有什么问题,我认为问题不在于这个特定的外键。
可能密钥没有注册或者另一个外键阻止了删除。
我用这个sql文件进行了测试,得到了想要的结果