2016-01-27 10 views
1

Когда я обновляю продукты в моем Magento-магазине внешне от моего бухгалтерского программного обеспечения я получаю следующее сообщение об ошибке в логах:SQL Integrity нарушение ограничения: 1062 Дублированный запись

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 (?, ?, ?, ?, ?) 

Как это исправить?

+0

У вас есть уникальная ограничение на 'catalog_product_entity_group_price' таблицы? Следуйте [этой ссылке] (http://stackoverflow.com/questions/5094948/mysql-how-can-i-see-all-constraints-on-a-table), чтобы узнать, как вы можете понять, какие существуют ограничения. –

ответ

2

Всякий раз, когда возникает проблема, связанная с «SQL Integrity ограничение», я попытался сделать ниже, и это работает для меня очень хорошо:

Каждый раз, когда вы планируете обновить продуктов с помощью панели Magento администратора или Другой источник в Magento.

Magento Enterprise Edition

Перейдите к Система> Конфигурация> Дополнительно> Управление Index> Индекс Функции> Установить все параметры на "Update, когда планируется"

Magento Community Edition

Перейти к системе> Index Manageme nt> Выбрать все> Действия> Изменить индексный режим> Обновление вручную> Сохранить

Эти настройки должны избегать любых ошибок ограничения целостности SQL при выпуске Bulk/Single Product Updates.

После продукты обновляются, откатить изменения назад, как показано ниже:

Magento Enterprise Edition

Navigate Система> Конфигурация> Дополнительно> Управление Index> Index Options> Установить все параметры в "Обновление на Save"> Сохранить

Magento Community Edition

Перейдите Система> Управление Главная> Выбрать все> Действия> Mode Change Index> Обновление на Save> Сохранить

Примечание :: Убедитесь, что /вар/замки удаляется перед установкой этих и перед выполнением массового обновления продукта.

Дайте мне знать, если это поможет.

Счастливый Coding ...

+0

Спасибо за ваш тщательный ответ. Я закончил установку расширения асинхронного повторного индексирования, которое переиндексируется через cron, а не в событиях. Это помогло. В этом отношении ваш ответ имеет большой смысл. https://mirasvit.com/magent-extensions/magento-asynchronous-reindex.html – user2002046