DB-Import取消:“无法添加外键约束”

时间:2018-03-29 16:44:55

标签: mysql database import

我正在尝试将magento商店转移到我的服务器上。不幸的是,我不是后端开发人员 - 只有CSS,HTML和其他前端的东西。希望有人能给我一些建议。

我从我想要导入的代理商处获得了数据库转储,并停止并显示错误消息:

BigDump:交错的MySQL转储导入器v0.36b 处理文件:2018-03-27_XXXXXXXXX.sql

从第1行开始

Error at the line 385: ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Api Sessions';

Query: CREATE TABLE `api_session` (
`user_id` int(10) unsigned NOT NULL COMMENT 'User id',
`logdate` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT 'Login date',
`sessid` varchar(40) DEFAULT NULL COMMENT 'Sessioin id',
KEY `IDX_API_SESSION_USER_ID` (`user_id`),
KEY `IDX_API_SESSION_SESSID` (`sessid`),
CONSTRAINT `FK_API_SESSION_USER_ID_API_USER_USER_ID` FOREIGN KEY (`user_id`) REFERENCES `api_user` (`user_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='Api Sessions'

MySQL: Cannot add foreign key constraint

我真的不知道该做什么,但我愿意学习该怎么做。谁能给我一个暗示问题是什么?

===============

我设法用另一个脚本导入数据库。我现在无法提供解决方案。

1 个答案:

答案 0 :(得分:0)

我猜它引用的表," api_user"此时不存在?值得注意的是,因为api_user在api_sessions之后按字母顺序排列。

您可以尝试将结构与数据分开(如果您的导入包含任何数据),只需在"导入并继续错误"中重复运行结构。模式,希望它将构建api_user并在以后的api_sessions中传递。如果你有循环依赖性,这将不会起作用。

你可以尝试这样的How to temporarily disable a foreign key constraint in MySQL?作为更好的解决方案......假设我的推测是正确的。检查它在外键约束中尝试引用的内容。