当前位置: 首页 > 知识库问答 >
问题:

错误1452:无法添加或更新子行:外键约束失败

吕宇定
2023-03-14
CREATE TABLE Ordre (
  OrdreID   INT NOT NULL,
  OrdreDato DATE DEFAULT NULL,
  KundeID   INT  DEFAULT NULL,
  CONSTRAINT Ordre_pk PRIMARY KEY (OrdreID),
  CONSTRAINT Ordre_fk FOREIGN KEY (KundeID) REFERENCES Kunde (KundeID)
)
  ENGINE = InnoDB;
CREATE TABLE Produkt (
  ProduktID          INT NOT NULL,
  ProduktBeskrivelse VARCHAR(100) DEFAULT NULL,
  ProduktFarge       VARCHAR(20)  DEFAULT NULL,
  Enhetpris          INT          DEFAULT NULL,
  CONSTRAINT Produkt_pk PRIMARY KEY (ProduktID)
)
  ENGINE = InnoDB;
CREATE TABLE Ordrelinje (
  Ordre         INT NOT NULL,
  Produkt       INT NOT NULL,
  AntallBestilt INT DEFAULT NULL,
  CONSTRAINT Ordrelinje_pk PRIMARY KEY (Ordre, Produkt),
  CONSTRAINT Ordrelinje_fk FOREIGN KEY (Ordre) REFERENCES Ordre (OrdreID),
  CONSTRAINT Ordrelinje_fk1 FOREIGN KEY (Produkt) REFERENCES Produkt (ProduktID)
)
  ENGINE = InnoDB;

错误代码:1452。无法添加或更新子行:外键约束失败(srdjank.ordrelinje,约束ordrelinje_fk外键(ordre)引用ordre(ordre))

我看过其他关于这个话题的帖子,但没有运气。我是不是在监督什么或者知道该怎么做?

共有1个答案

郝玄天
2023-03-14

取自使用外键约束

外键关系涉及一个包含中心数据值的父表和一个具有相同值的子表,子表指向其父表。在子表中指定了外键子句。

如果父表中没有匹配的候选键值,则它将拒绝任何试图在子表中创建外键值的插入或更新操作。

 类似资料:
  • 问题内容: 我的数据库中有两个表: ; 。 有一个列引用了表的列。每当我试图做在上面的错误将显示和数据不会被保存。 问题答案: 听起来是在表之间您在数据库中具有外键约束。这意味着,在Course_id列中,您不能插入与外部表中的id不同的值。 上面的错误意味着当您发布数据时,外部字段为空或丢失。 查找内容:1.检查数据库中子表中的外部字段是否可以接受NULL。如果您具有带值的下拉列表,并且如果该字

  • 问题内容: 当我执行以下SQL命令时: 我收到以下错误消息: 我的桌子: 我研究了许多类似的案例,但找不到任何解决方案。任何帮助,将不胜感激。 问题答案: 为什么您获得的是异常的原因是因为你将在表中的记录,其中的价值是不存在的表。与相同的值也未显示在表上。 表格取决于表格:和 。所以,要确保在表中插入记录时,该值与存在于父表已经:和 。 尝试执行此查询,并确定将其插入。 SQLFiddle演示 我

  • 问题内容: 当我不想相互连接两个表时,我得到以下消息:#1452-无法添加或更新子行:外键约束失败....我想从facebook_users表格中连接oauth_uid2(主键)外键为oauth_uid2的错误列表。但是我总是得到这个信息。我已经清除了数据,但没有任何效果。在表users_facebook中,我还有1条记录。 1452-无法添加或更新子行:外键约束失败(。,在更新级联上删除级联时使

  • 当我不想将两个表相互连接时,我收到消息:#1452 - 无法添加或更新子行:外键约束失败....我想使用外键oauth_uid2将oauth_uid2(主键)从facebook_users选项卡连接到错误选项卡。但我总是收到这个信息。我已经清除了我的数据,但没有任何效果。同样在表中users_facebook我有 1 条记录。 1452-无法添加或更新子行:外键约束失败(., CONSTRAINT

  • 保存; 例外 调试:org.hibernate.engine.jdbc.spi.sqlExceptionHelper-无法执行语句[n/a]com.mysql.jdbc.exceptions.mysqlintegrityConstraintViolationException:无法添加或更新子行:外键约束失败(。,约束)外键()引用 警告:org.hibernate.engine.jdbc.spi

  • 我已经创建表MySQL工作台如下所示: LUFEWAFFE表: 特拉格弗莱切表 插入。LUFTWAFFE的sql日期 所以当我尝试运行它时: 代码:1452。无法添加或更新子行:外键约束失败(。, CONSTRAINTFOREIGN KEY()REFERENCES()) 我真的不明白错误是什么。 你可以帮我吗?