Нарушение ограничения целостности 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 удален перед их установкой и перед массовым обновлением продукта.

Позвольте мне знать, если это помогает.

Удачного кодирования...

Другие вопросы по тегам