Страница 1 из 14

SQL запросы для движка OpenCart

Добавлено: 19 янв 2012 14:36
support
Cписок SQL запросов с описанием для чего они используются для движка OpenCart.


Импорт:


Экспорт:

Обновление своего статуса наличия товара "Уточняйте" из Учетной Системы.

Код: Выделить всё

UPDATE product, etrade_products SET stock_status_id=(SELECT stock_status_id FROM stock_status WHERE language_id=(SELECT language_id FROM language WHERE name='English') AND name='СТАТУС_НА_САЙТЕ_Уточняйте') WHERE etrade_products.tov_id=product.product_id AND etrade_products.nalich_c LIKE '%СТАТУС_В_ПЛИ_Уточняйте%';;;
Заменить артикул производителя на ID товара:
Вкладка До обновления.

Код: Выделить всё

UPDATE etrade_products SET tov_art=tov_id;;;
Обновление ЧПУ:
Вкладка после обновления

для категорий:

Код: Выделить всё

update oc_url_alias ua
  inner join etrade_cats e on
                              e.cat_id = cast(SUBSTRING(ua.query from 13) as UNSIGNED)
set ua.keyword = e.cat_seo_url
WHERE ua.query like 'category_id=%';;;
для товаров:

Код: Выделить всё

update oc_url_alias ua
  inner join etrade_products e on
                              e.tov_id = cast(SUBSTRING(ua.query from 12) as UNSIGNED)
set ua.keyword = e.tov_seo_url
WHERE ua.query like 'product_id=%';;;
для производителей (брендов):

Код: Выделить всё

update oc_url_alias ua
  inner join etrade_mans e on
                                  e.man_id = cast(SUBSTRING(ua.query from 17) as UNSIGNED)
set ua.keyword = e.man_seo_url
WHERE ua.query like 'manufacturer_id=%';;;
Обновление названия производителя.
Вкладка после обновления

Код: Выделить всё

INSERT INTO oc_manufacturer_description (manufacturer_id, language_id, name) 
SELECT manufacturer_id, 1 as language_id, name 
FROM oc_manufacturer 
WHERE manufacturer_id NOT IN (SELECT manufacturer_id FROM oc_manufacturer_description WHERE language_id=1);;;

;)

Добавлено: 08 мар 2012 13:26
Ercanium
;)

Re: SQL запросы для движка OpenCart

Добавлено: 08 мар 2012 15:11
TechAdmin
Вам необходимо использовать этот SQL запрос для каждого магазина, в данном примере это магазин с ИД = 1 и ИД = 2

Код: Выделить всё

INSERT INTO product_to_store (product_id, store_id) SELECT product_id, 1 as store_id FROM product_to_store WHERE product_id NOT IN (SELECT product_id FROM product_to_store WHERE store_id=1);;;
INSERT INTO product_to_store (product_id, store_id) SELECT product_id, 2 as store_id FROM product_to_store WHERE product_id NOT IN (SELECT product_id FROM product_to_store WHERE store_id=2);;;


SQL запрос добавить в "Ручная настройка работы модуля E-Trade HTTP Tunnel - SQL режим" во вкладку "SQL запросы (выполняются после основного обновления)".

;)

Добавлено: 27 апр 2012 22:23
Ercanium
;)

Re: SQL запросы для движка OpenCart

Добавлено: 28 апр 2012 12:50
TechAdmin
Cтатусы наличия 'Есть', 'Нет' настраиваются в параметрах туннеля. Что конкретно вам необходимо реализовать?

;)

Добавлено: 28 апр 2012 13:32
Ercanium
;)

Re: SQL запросы для движка OpenCart

Добавлено: 28 апр 2012 15:04
TechAdmin
Возможно.

Код: Выделить всё

UPDATE product, etrade_products SET product.stock_status_id=3 WHERE etrade_products.tov_id=product.product_id AND etrade_products.supply_id=25

Re: SQL запросы для движка OpenCart

Добавлено: 19 сен 2012 13:52
7Владимир7
Здравствуйте!
Нада передать мега-тег "Title" SQL запросом в поле "seo_title" таблицы "product_description" БД сайта.
Попробовал запрос

Код: Выделить всё

INSERT INTO product_description (seo_title) SELECT tov_id, '1' as head_title FROM etrade_products WHERE etrade_products.row_exist=0;;;  
но получил ошибку.
Подскажите, как правильно написать SQL запрос?

Re: SQL запросы для движка OpenCart

Добавлено: 19 сен 2012 14:20
TechAdmin
Попробуйте использовать такой SQL запрос:

Код: Выделить всё

UPDATE product_description, etrade_products SET product_description.seo_title=etrade_products.head_title WHERE product_description.product_id=etrade_products.tov_id

Re: SQL запросы для движка OpenCart

Добавлено: 19 сен 2012 15:24
7Владимир7
Такой запрос сработал!
Спасибо большое за помощь и оперативность!
Может кому то пригодится, такой же запрос, только для категорий:

Код: Выделить всё

UPDATE category_description, etrade_cats SET category_description.seo_title=etrade_cats.meta_title WHERE category_description.category_id=etrade_cats.cat_id;;;