Нарушение ограничения целостности SQL: 1062 Повторяющаяся запись
Когда я обновляю продукты в моем Magento-магазине извне из своего бухгалтерского программного обеспечения, я получаю следующую ошибку в журналах:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '727-0-4-0'
for key 'CC12C83765B562314470A24F2BDD0F36', query was: INSERT INTO
`catalog_product_entity_group_price` (`entity_id`, `all_groups`,
`customer_group_id`, `value`, `website_id`) VALUES (?, ?, ?, ?, ?)
Как это исправить?
1 ответ
Всякий раз, когда возникает проблема, связанная с "ограничением целостности SQL", я старался сделать следующее, и это сработало для меня очень хорошо:
Каждый раз вы планируете обновлять продукты с помощью панели администрирования Magento или другого источника в Magento.
Magento Enterprise Edition
Перейдите в Система> Конфигурация> Дополнительно> Управление индексами> Параметры индекса> Установите для всех параметров значение "Обновлять по расписанию".
Magento Community Edition
Перейдите в Система> Управление индексами> Выбрать все> Действия> Изменить режим индекса> Обновление вручную> Сохранить
Эти параметры позволяют избежать любых ошибок ограничения целостности SQL во время массового обновления / обновления одного продукта.
После обновления продуктов верните изменения обратно, как показано ниже:
Magento Enterprise Edition
Перейдите в Система> Конфигурация> Дополнительно> Управление индексами> Параметры индекса> Установите для всех параметров значение "Обновить при сохранении" > Сохранить
Magento Community Edition
Перейдите в Система> Управление индексами> Выбрать все> Действия> Изменить режим индекса> Обновить при сохранении> Сохранить
Примечание:: Убедитесь, что /var/locks удален перед их установкой и перед массовым обновлением продукта.
Позвольте мне знать, если это помогает.
Удачного кодирования...