You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行SQL查询报错Foreign key constraint is incorrectly formed如何解决

报错原因

核心问题是建表顺序不符合外键约束要求:
创建posts表时,你定义了外键auteur_id关联auteurs表的id字段,但此时auteurs表还未创建,MySQL无法校验关联字段的合法性,因此抛出Foreign key constraint is incorrectly formed错误。
你当前代码中两个表的关联字段类型(auteurs.id和posts.auteur_id均为int(11))是匹配的,不存在其他类型不匹配问题。

修复方法

调整两张表的创建顺序,先创建被关联的父表auteurs,再创建子表posts即可,修正后的完整代码如下:

DROP DATABASE IF EXISTS foodblog;

CREATE DATABASE foodblog;

USE foodblog;

-- 先建被外键引用的父表auteurs
CREATE TABLE auteurs (
    id int(11) AUTO_INCREMENT,
    auteur varchar(255),
    PRIMARY KEY (id)
);

-- 再建子表posts
CREATE TABLE posts (
    id int(11) AUTO_INCREMENT,
    titel varchar(255),
    datum DATETIME DEFAULT current_timestamp(),
    img_url varchar(255),
    inhoud text,
    auteur_id int(11),
    PRIMARY KEY (id),
    FOREIGN KEY (auteur_id) REFERENCES auteurs(id)
);

内容的提问来源于stack exchange,提问作者Mauro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 14:36:01