gpt4 book ai didi

mysql - 错误号 150 : Foreign key constraint is incorrectly formed

转载 作者:可可西里 更新时间:2023-11-01 08:02:36 27 4
gpt4 key购买 nike

我已经阅读了很多关于这个错误的问题,但我要么不明白发生了什么/答案,要么不适合我的情况。

我已经有了一个简单的用户表:

CREATE TABLE user
(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
password VARCHAR(64) NOT NULL
);
CREATE UNIQUE INDEX user_username_uindex ON user (username);

我想添加一个引用用户 ID 的帖子表:

CREATE TABLE post
(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
title VARCHAR(200) NOT NULL,
date DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL,
authorID INT NOT NULL,
imgPath VARCHAR(500),
postText TEXT NOT NULL,
CONSTRAINT post_user_id_fk FOREIGN KEY (authorID) REFERENCES user (id) ON DELETE SET NULL
);

但是第二个表没有创建,而是抛出标题中提到的错误:

"Foreign key constraint is incorrectly formed".

我尝试了其他问题的答案中提到的一些事情(我可能误解了),例如使 user.id 也是唯一的,尽管那没有用。

有人能帮我解释一下问题是什么吗?我有更复杂的数据库使用此方法,并且以前从未抛出错误。

最佳答案

在当前情况下,authorID NOT NULL 是问题所在,但有时不容易指出导致错误的原因。有一种简单的方法可以找到导致此错误的原因,您可以使用:显示引擎 INNODB 状态;

这将在“LATEST FOREIGN KEY ERROR”部分下显示有关错误的更多详细信息。

更多细节在这里:

https://mariadb.org/mariadb-innodb-foreign-key-constraint-errors/

关于mysql - 错误号 150 : Foreign key constraint is incorrectly formed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49220697/

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