gpt4 book ai didi

MySQL 查询在备份数据库上有效,但在原始数据库上无效,错误为 : 150

转载 作者:行者123 更新时间:2023-11-29 05:53:32 24 4
gpt4 key购买 nike

我在我的机器 (OS X 10.13.6) 上导入了我的 MySQL 数据库的备份,然后运行这个脚本:

ALTER TABLE user_activity_data
ADD FOREIGN KEY (article_id) REFERENCES Article(id);

一切正常:添加了外键。

我在原始机器 (Debian GNU/Linux 8 (jessie)) 上运行相同脚本,但脚本失败并显示错误消息:

errno: 150

两列的类型完全一样:int(11)

这怎么可能?这是一个备份,所以它是同一个数据库。的确,它是两个不同版本的 MySQL……但它们显然应该是兼容的。


这是脚本失败的 MySQL 版本:

+-----------------+
| 5.5.60-0+deb8u1 |
+-----------------+

以及它成功的版本:

+-----------+
| 5.7.22 |
+-----------+

最佳答案

您可能需要确保您的外键与主键具有完全相同的类型。

MySQL 5.5 可能更宽容一些,而 MySQL 5.7 则更严格一些。考虑在两者上使用相同的版本。

关于MySQL 查询在备份数据库上有效,但在原始数据库上无效,错误为 : 150,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51840856/

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