При создании товара в ручную. выдает ошибку.
в таблице ?:product_descriptions удалите строки, в которых product_id=29470
А где эта таблица находится ?
Какой-то мусор в таблице. Зайдите в phpMyAdmin и запустите строчки
DELETE FROM cscart_product_descriptions WHERE product_id > 29470;
DELETE FROM cscart_ult_product_descriptions WHERE product_id > 29470;
А если там товаров 50000+ и проблемный с середине)
Товаров очень много, более 20000.
Ранее проблем не было, проявилось 2 дня назад.
Что делать? из-за чего так ?
Так в cscart_products автоинкремент идет по значению 29470. Значит, в других таблицах не должно быть значений больше этого
Но бэкапы при этом никто не отменял, конечно
началось все вчера с добавления новой карточки :
ну так вам же сказали
вы добавляете товар и ему в таблице products выдается следующее инкрементное значение product_id=29457
в таблице product_descriptions также заносится значение для русского языка (ключ product_id/lang_code) 29457 ru (уникальное), и тут выясняется, что строка с такими значениями этих полей уже есть. Возможно удаляли товары, возможно, каким-то левым способом, возможно, экспорт.импорт товаров. Но каким-то образом значение инкремента для product_id понизилось.
По хорошему - надо смотреть таблицы, относящиеся к товарам, и вычистить от левых записей, например чтобы в других таблицах product_* не встречалось записей с значением product_id, которого нет в таблице products.
Один из вариантов решения “в лоб” вам предложил @ecomlabs - но все равно хорошо бы определить сначала, с какого значения product_id всё начинается.