Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Фатальная ошибка: Неперехваченное исключение 'исключение' с сообщением 'ошибка: дублировать запись '1140-150' для ключа 'PRIMARY'


Recommended Posts

Доброго всем дня.
Подскажите. почему валят ошибки такого типа:
 

Фатальная ошибка: Неперехваченное исключение 'исключение' с сообщением 'ошибка: дублировать запись '1140-150' для ключа 'PRIMARY'
ошибка№: 1062

вставить в oc_product_to_category SET product_id = '1140', category_id = ' 150 " в /var / www / site.com / data / www / site. com / system / library/db / mysqli.php: 40

Трассировка стека:
#0 /var/www/site.com/data/www/site.com/system/library/db.php(45): DB\MySQLi->query('INSERT INTO oc_...')
#1/var/www/site.com/data/www/storage/modification/admin/model/catalog / product.php (314): DB->query('INSERT INTO oc_...')
#2 [внутренняя функция]: ModelCatalogProduct - >editProduct ('1140', массив)
#3 /var / www / site.com / data/www/storage/modification/system/engine / loader.php (248): call_user_func_array(Array, массив)
#4 [внутренняя функция]: загрузчик - > {закрытие}(массив, массив)
#5 /var/www/site.com/data/www/site.com/system/engine/proxy.php(47): call_user_func_array (объект (закрытие), массив)
#6 / var / www / site.com / data/www/storage/modification/admin/controller/catalog / product.php (126): Прокси - > _ _ call ('editProduct', Array)
#7 / var / www / site.com / dat in /var/www/site.com/data/www/site.com/system/library/db/mysqli.php on line 40
Фатальная ошибка: Uncaught исключение исключение с сообщением об ошибке:': повторяющиеся записи '783-1' для ключа 'первичного'
Ошибки Нет: 1062
Вставить в oc_product_description набор product_id = '783', language_id = '1', имя = '1417-971 рамка пластик 50х70 ФотоАльт', описание = '&ЛТ;п&ГТ;&ЛТ;Спан стиль=то"шрифт-размер: 18px;" и&ГТ;Материал багета: пластик&ЛТ;/службы&ГТ;&ЛТ;/п&ГТ;&ЛТ;п&ГТ;&ЛТ;Спан стиль=то"шрифт-размер: 18px;" и&ГТ;Бренд: ФотоАльт&ЛТ;/службы&ГТ;&ЛТ;/п&ГТ;&ЛТ;п&ГТ;&ЛТ;Спан стиль=на"шрифт-размер: 18px;" и&ГТ;Артикул рамки: 1417-971</span></p><p><span style="font-size: 18px;">Вставка рамки: стекло</span></p><p><span style="font-size: 18px;">Подвес у рамки: есть</span></p><p><span style="font-size: 18px;">Задник у рамки: оргалит</span></p><p><span style="font-size: 18p in /var/www/fotoalt/data/www/fotoalt.ru/system/library/db/mysqli.php on line 40

 

Если убрать PRIMARY у проблемных столбцов, то ошибка пропадает. Только в оригинальном sql-файле PRIMARY присутствуют. Почему же они здесь конфликтуют?

Змінено користувачем toxi
Надіслати
Поділитися на інших сайтах


Не видел

 

Здесь нужно как бы точечными запросами

SELECT p2c.*  FROM product_to_category p2c

LEFT JOIN product p on p.product_id = p2c.product_id

WHERE p.product_id IS NULL

 

Хотя..
А зачем инсертить и как часто  идут ошибки

Такая ошибка возможно при добавлении товара
При редактировании запись сначала удаляется

 

Надіслати
Поділитися на інших сайтах

12 часов назад, chukcha сказал:

Такая ошибка возможно при добавлении товара
При редактировании запись сначала удаляется

Судя по трассировке ошибки сыпятся при редактировании

В 24.10.2019 в 11:42, toxi сказал:

#2 [внутренняя функция]: ModelCatalogProduct - >editProduct ('1140', массив)

Похоже в модели покарябали удаление product_to_category

В файле admin/model/catalog/product.php надо проверить этот кусок кода, какая-то проблема с первой строкой...

		$this->db->query("DELETE FROM " . DB_PREFIX . "product_to_category WHERE product_id = '" . (int)$product_id . "'");

		if (isset($data['product_category'])) {
			foreach ($data['product_category'] as $category_id) {
				$this->db->query("INSERT INTO " . DB_PREFIX . "product_to_category SET product_id = '" . (int)$product_id . "', category_id = '" . (int)$category_id . "'");
			}
		}

А лучше выложи файл storage/modification/admin/model/catalog/product.php - будет проще найти причину.

Надіслати
Поділитися на інших сайтах

В 24.10.2019 в 11:42, toxi сказал:

storage/modification/admin/model/catalog / product.php (314)

Что-то не то показываете

 

в файле 314
               if (isset($data['product_tagn'])) {
                    foreach ($data['product_tagn'] as $tag_id) {
                        $this->db->query("INSERT INTO " . DB_PREFIX . "product_to_tag SET product_id = '" . (int)$product_id . "', tag_id = '" . (int)$tag_id . "'");
                    }
                }

Надіслати
Поділитися на інших сайтах

Показал файл, который находится в каталоге: /storage/modification/admin/model/catalog

2019-10-29_131140.png.cefced3779e35c2376631af73df7c2ba.png

Оригинальный запрос, кторый показывали выше, находится на 319 строке.

Змінено користувачем toxi
Надіслати
Поділитися на інших сайтах


  • 1 month later...

Добрый день, похожая проблема.

Ни как не могу решить, чистил таблицы баз данных по product и option, заливал заново, но проблема не исчезает.

Помогите разобраться.

12.png

Надіслати
Поділитися на інших сайтах


Та я то все понимаю что пишет, исправить то как? Мне при каждом редактировании товара показывает эту ошибку, причем на многих товарах, это не одиночная проблема. Это может быть связано с модулем Export/ Import так как товары заливал с помощью него.

Змінено користувачем rapizzz
добавление
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.