gpt4 book ai didi

MySQL错误1452无法添加或更新子行

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

MySQL 初学者。

运行一个项目(由其他人编写)。为它找到了新的数据库,将其放入 MySQL 中。现在出现错误

1452 Cannot add or update child row: a foreign key constraint fails ('proj'.'access_logs', CONSTRAINT 'access_logs_ibfk_1' FOREIGN KEY ('user_id') REFERENCES 'users' ('id'))

access_logs 具有 access_logs_ibfk_1users 具有 users_ibfk_1,-4,-5,-6 - 4 个他们

已经查过并尝试过:

  • 确保 accesslogs user_id 没有匹配的user_id
  • 排序规则相同 (utf8_general_ci)
  • 引擎相同(InnoDB)
  • 类型相同(user_id 为 INT(11) UN,idINT(11) UN PK AI)
  • 确保程序可以正常处理以前的数据(在 CakePHP 1.3 中)并且可以正常工作

可能出现什么问题以及如何修复?

最佳答案

access_logs 中有一个接受 user_id 的字段,该数字必须首先存在于表 users 中> 在字段 id 中。

外键(或简称FK)是对插入到表中的数据的约束,这意味着插入到表A中的值必须首先存在于其他表中。哪个其他表以及该表中的哪个字段取决于您定义 FK 的方式。

我会阅读有关基于 SQL 的服务器的常见约束(主键、非空、唯一和外键)

关于MySQL错误1452无法添加或更新子行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17354017/

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