【问题标题】:Magento -- "SQLSTATE[23000]: Integrity constraint violation.." on customer updateMagento - “SQLSTATE [23000]:完整性约束违规..”关于客户更新
【发布时间】:2011-05-23 21:54:46
【问题描述】:

迁移服务器后,每次尝试更新客户信息时都会出错。我正在使用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

这有关系吗?

【问题讨论】:

  • 您的 Magento 系统中的某些代码导致 SQL 运行,该 SQL 尝试将数据插入到使用唯一键声明的数据库列中。造成这种情况的可能原因很多,如果您想在 this 论坛上获得答案,则需要投入一些调试时间。
  • 我已经更新了我在 Magento 日志中找到的所有内容。
  • “当你跟踪正在运行的 SQL 时会发生什么”,他被动地问道。

标签: mysql sql magento mysql-error-1062


【解决方案1】:

问题是因为当您迁移数据库时,mysql 有帮助 重新启动自动递增的 id 列,并且 Magento 有一些硬编码值假设 ID 从零开始。导入数据时需要禁用 foreign_key_checks。

【讨论】:

  • 这是一个死链接。在这里为后代复制粘贴会很好......
【解决方案2】:

您的编辑正在尝试重新创建用户,而不是更新现有用户。这是插件的一个错误。您可能想向作者报告或等待更新。

【讨论】:

    【解决方案3】:

    如果您尝试导入 SQL 文件,请确保您“禁用外键检查”。 为此,只需在 SQL 文件的开头添加 SET FOREIGN_KEY_CHECKS = 0;。 还要在文件末尾添加 SET FOREIGN_KEY_CHECKS = 1;

    【讨论】:

      猜你喜欢
      • 2022-11-02
      • 2016-05-23
      • 1970-01-01
      • 1970-01-01
      • 2021-08-26
      • 2020-01-31
      • 2020-01-28
      • 2021-03-22
      • 1970-01-01
      相关资源
      最近更新 更多