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

Warning: mysqli::query(): (21000/1242) Как исправить?


Recommended Posts

Здравствуйте! При переносе данных с версии 1.5.1. на ocStore 3.0.2.0 с помощью модуля минграции A-Migration на некоторых товарах и категориях вылетет ошибка.

 

Warning: mysqli::query(): (21000/1242): Subquery returns more than 1 row in ...system/library/db/mysqli.php on line 18
Fatal error: Uncaught exception 'Exception' with message 'Error: Subquery returns more than 1 row<br />Error No: 1242<br />SELECT DISTINCT *, pd.name AS name, p.image, p.noindex AS noindex, m.name AS manufacturer, (SELECT price FROM oc30_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM oc30_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM oc30_product_reward pr WHERE pr.product_id = p.product_id AND pr.customer_group_id = '1') AS reward, (SELECT ss.name FROM oc30_stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss. in ...system/library/db/mysqli.php on line 40

 

Во всем разбираюсь сама, так что не судите строго, если есть возможность подскажите, как убрать ошибку.:oops:

 

Почитав информацию в интернете, пришла к выводу, что эта ошибка возможна из-за дублей товаров и раньше она решалась удалением дублей в таблице oc_url_alias. Но в 3,0 такой таблицы нет. 

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


  В 28.03.2021 в 08:13, nikifalex сказав:

есть похожая. oc_seo_url называется

Expand  

 

Там смотрела, но там сего 30 строк так сказать новосозданных SEO генератором. 

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


  В 28.03.2021 в 09:00, nikifalex сказав:

вы приведите запрос целиком. В нем несколько поздапросов. Так вот какой-то возвращает больше одной строки.

Какой именно неизвестно. открывайте phpmyadmin и медитируйте до просветления

Expand  

Warning: mysqli::query(): (21000/1242): Subquery returns more than 1 row in /home/sivtermo/sivtermo.com.ua/test/system/library/db/mysqli.php on line 18
Fatal error: Uncaught exception 'Exception' with message 'Error: Subquery returns more than 1 row<br />Error No: 1242<br />SELECT DISTINCT *, pd.name AS name, p.image, p.noindex AS noindex, m.name AS manufacturer, (SELECT price FROM oc30_product_discount pd2 WHERE pd2.product_id = p.product_id AND pd2.customer_group_id = '1' AND pd2.quantity = '1' AND ((pd2.date_start = '0000-00-00' OR pd2.date_start < NOW()) AND (pd2.date_end = '0000-00-00' OR pd2.date_end > NOW())) ORDER BY pd2.priority ASC, pd2.price ASC LIMIT 1) AS discount, (SELECT price FROM oc30_product_special ps WHERE ps.product_id = p.product_id AND ps.customer_group_id = '1' AND ((ps.date_start = '0000-00-00' OR ps.date_start < NOW()) AND (ps.date_end = '0000-00-00' OR ps.date_end > NOW())) ORDER BY ps.priority ASC, ps.price ASC LIMIT 1) AS special, (SELECT points FROM oc30_product_reward pr WHERE pr.product_id = p.product_id AND pr.customer_group_id = '1') AS reward, (SELECT ss.name FROM oc30_stock_status ss WHERE ss.stock_status_id = p.stock_status_id AND ss. in /home/sivtermo/sivtermo.com.ua/test/system/library/db/mysqli.php on line 40

 

Это все что выдает при переходе на товар.

 

В phpmyadmin медитирую уже пару дней, просветление не наступает. Решила спросить тут. 

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


  В 28.03.2021 в 09:30, nikifalex сказав:

допустим вот вы работаете кассиром в магните, и зарабатываете например 1000 руб в день.

Иного за 2 дня могли бы заработать 2000 руб.

 

А заплатить кому-то за решение этой проблемы хватило бы 500 руб. Ну еще за 500 вам бы рассказали подробно в чем проблема.

Итого, заказав услугу вы съэкономили бы 1000 руб, что весьма немало.

Плюс вместо двух дней на все это ушел бы час времени, а остальное время вы могли бы посвятить семье, например

Expand  

 

Это прекрасно. Но как же саморазвитие? Мне можно не решать проблему, а указать направление. 

И, к сожалению, вряд ли проблема решится за 500 руб.  

 

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


  В 28.03.2021 в 09:42, lilit2 сказав:

 

Это прекрасно. Но как же саморазвитие? Мне можно не решать проблему, а указать направление. 

И, к сожалению, вряд ли проблема решится за 500 руб.  

 

Expand  

вам указали направление. более того-оно указано в самой ошибке. у вас где то дубль. ищите в бд где именно в товаре он есть исходя из запросов в ошибке

например начать с таблицы oc_product и пройти все таблицы продукта.

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


  В 28.03.2021 в 10:18, Dimasscus сказав:

вам указали направление. более того-оно указано в самой ошибке. у вас где то дубль. ищите в бд где именно в товаре он есть исходя из запросов в ошибке

например начать с таблицы oc_product и пройти все таблицы продукта.

Expand  

 

В том то и проблема, что я сначала все просмотрела, а потом уже начала писать на форум. И ни в таблицах категорий , ни в таблицах oc_product я дублей не нашла. На всякий случай проверила и производителей, но нет. Нет там дублей. Вот и спрашиваю, может есть  какая то таблица связанная с ними, а я ее не просмотрела. Или может это из-за сео генератора такая проблема или может мультиязычность дает такой эффект. 

 

В общем если Вы говорите дубль, значит пойду искать снова. Спасибо. 

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


  В 28.03.2021 в 10:41, lilit2 сказав:

 

В том то и проблема, что я сначала все просмотрела, а потом уже начала писать на форум. И ни в таблицах категорий , ни в таблицах oc_product я дублей не нашла. На всякий случай проверила и производителей, но нет. Нет там дублей. Вот и спрашиваю, может есть  какая то таблица связанная с ними, а я ее не просмотрела. Или может это из-за сео генератора такая проблема или может мультиязычность дает такой эффект. 

 

В общем если Вы говорите дубль, значит пойду искать снова. Спасибо. 

Expand  

это не я говорю. это ошибка говорит. вы как дубли проверяли? запросом к таблице или построчно глазами?

Скиньте дамп бд. Я попробую помочь

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


  В 28.03.2021 в 10:58, Dimasscus сказав:

это не я говорю. это ошибка говорит. вы как дубли проверяли? запросом к таблице или построчно глазами?

Скиньте дамп бд. Я попробую помочь

Expand  

Глазами построчно. Я еще совсем новичок.

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


  В 28.03.2021 в 12:22, lilit2 сказав:

Глазами построчно. Я еще совсем новичок.

Expand  

Запросом надо. У вас могут бьіть дубли в групах, продуктах, производителях. Без бд помочь не смогу

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


  В 28.03.2021 в 13:24, Dimasscus сказав:

Запросом надо. У вас могут бьіть дубли в групах, продуктах, производителях. Без бд помочь не смогу

Expand  

 

Искала запросами по базе -  не нашла.

 

Психонула, все снесла, залила бекап атрибутов, категорий, опций и товаров из чистой базы, повторно модулем миграции перенесла и заработало. 

Ошибок больше нет.

 

Спасибо.

 

 

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


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

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

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

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

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

Вхід

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

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

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

Important Information

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