gpt4 book ai didi

mysql - 外键已接受但不起作用

转载 作者:行者123 更新时间:2023-11-30 01:11:48 24 4
gpt4 key购买 nike

我正在为我的网站创建一个“民意调查”插件,为此我有 2 个表格(如下所示)。

我想要实现的是,通过从 dd_polls 表中删除“poll”,dd_poll_options 表上的任何链接外键也会被删除。

两个表都创建得很好,但我上面提到的期望没有发生。

我是否以正确的方式使用外键?如果是,如何修复我的代码?谢谢。

CREATE TABLE dd_polls (
ID smallint(3) NOT NULL AUTO_INCREMENT,
poll_created_by smallint(3) DEFAULT "0",
poll_created_date datetime DEFAULT "0000-00-00 00:00:00" NOT NULL,
poll_last_edited_by smallint(3) DEFAULT "0",
poll_last_edited_date datetime DEFAULT "0000-00-00 00:00:00" NOT NULL,
poll_title varchar(128) COLLATE latin1_general_ci,
poll_start_date date DEFAULT "0000-00-00" NOT NULL,
poll_expiry_date date DEFAULT "0000-00-00" NOT NULL,
poll_closed tinyint(1) NOT NULL,
poll_allow_recasting tinyint(1) NOT NULL,
poll_show_votes tinyint(1) NOT NULL,
UNIQUE (ID)
)

CREATE TABLE dd_poll_options (
ID smallint(3) NOT NULL AUTO_INCREMENT,
option_text text(255) COLLATE latin1_general_ci,
option_order smallint(2) DEFAULT "0",
poll_id smallint(3) NOT NULL,
FOREIGN KEY (poll_id) REFERENCES dd_polls (ID)
ON DELETE CASCADE,
UNIQUE (ID)
)

最佳答案

只是一个疯狂的猜测,但我认为你需要使用 InnoDB 引擎才能使其工作。我打赌您正在使用 MyISAM。

这是具有相同症状的另一个问题:on-delete-cascade-not-working-in-mysql

这不是正确的语法

CONSTRAINT FOREIGN KEY (poll_id) REFERENCES dd_polls(ID) ON DELETE CASCADE,

关于mysql - 外键已接受但不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19407418/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com