迁移服务器后,每次尝试更新客户信息时都会收到错误消息。我正在使用customer activation plugin,但在禁用它之后,我仍然会遇到同样的错误。
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '7-127' for key 2
有什么问题?
即使在卸载插件后,我在尝试保存客户信息时也会收到此错误消息。所以这让我相信它与Magento和/或我切换到的服务器有更大的问题。
我检查了Magento的日志,我多次收到此通知:
ERR (3): User Notice: Sorry, your PCRE extension does not support UTF8 which is needed for the I18N core in ../httpdocs/store/lib/Zend/Locale/Format.php on line 769
这是相关的吗?
答案 0 :(得分:9)
问题是因为当您迁移数据库时,mysql 有帮助地重新启动自动递增的id列,而Magento有一些硬编码值,假设ID从零开始。导入数据时需要禁用foreign_key_checks。
答案 1 :(得分:1)
您的编辑正在尝试重新创建用户,而不是更新现有用户。这是插件的一个错误。您可能希望将其报告给作者或等待更新结果。
答案 2 :(得分:1)
如果您尝试导入SQL文件,请确保“禁用外键检查”。 为此,只需在SQL文件的开头添加 SET FOREIGN_KEY_CHECKS = 0; 。 还要在文件末尾添加 SET FOREIGN_KEY_CHECKS = 1; 。