Menadżer SQL

Jest to kompleksowe narzędzie zarezerwowane dla obsługi technicznej, albo osób, które umieją poruszać się po bazie danych za pomocą języka SQL. Pomimo skomplikowania, narzędzie to może być niezwykle użyteczne dla tych, którzy je opanują.

To narzędzie pozwala Ci na wykonywanie zapytań bezpośrednio na bazie danych PrestaShop i zachowywać je do ponownego użycia w każdej chwili później. PrestaShop przedstawia dane na wiele sposobów, ale może będziesz chcieć mieć do czynienia z czystymi danymi zamiast przejrzystego interfejsu PrestaShop. Korzystając z Menadżera SQL możesz dokonywać kompleksowych zapytań, które utworzą tabele wyników jakich potrzebujesz.

Na przykład używając tego narzędzia i znajomości SAL, mógłbyś utworzyć zapytanie, które dawałoby Ci zaktualizowaną listę użytkowników zapisanych do Twojego Newslettera; albo uzyskiwać listę produktów w formacie HTML, lub CSV.

Ze względów bezpieczeństwa możesz korzystać wyłącznie z polecenia SELECT, wszystkie inne jak UPDATE, DELETE, CREATE TABLE, DROP, są zablokowane. Także klucze dostępowe i hasła są ukryte (***********).

Tworzenie nowego zapytania

Jak zwykle przycisk "Dodaj nowy" prowadzi do formularza, który posiada dwa główne pola:

Ponadto "Lista tabel MySQL" pomoże Ci odkryć strukturę bazy danych i ułatwi Ci tworzenie zapytań. Dostarcza Ci poręczny selektor wszystkich dostępnych tabel. Zaznacz tabelę, a PrestaShop pokaże Ci jej atrybuty u typy, następnie naciśnij "Dodaj atrybut do zapytania SQL" a podana nazwa zostanie wysłana do pola zapytania.

Zachowanie zapytania przeniesie Cię z powrotem na stronę główną.

Rozpoczynanie zapytania

Each saved query in the table has four icons to the right of its row:

Settings

There is only one setting at this time:

Some sample queries

The possibilities are endless, but here are a few sample queries to help you build your own.

Listing all the e-mails address of all the customers

SELECT email FROM ps_customer

Listing all the e-mails address of all the customers who are subscribed to your newsletter

SELECT email
FROM ps_customer
WHERE newsletter = 1

Listing all the products which are active and have a description in French (id_lang = 4)

SELECT p.id_product, pl.name, pl.link_rewrite, pl.description
FROM ps_product p
LEFT JOIN ps_product_lang pl ON (p.id_product = pl.id_product)
WHERE p.active = 1
AND pl.id_lang = 4

Listing all the orders, with details about carrier, currency, payment, total and date

SELECT o.`id_order` AS `id`,
	CONCAT(LEFT(c.`firstname`, 1), '. ', c.`lastname`) AS `Customer`,
	ca.`name` AS `Carrier`,
	cu.`name` AS `Currency`,
	o.`payment`, CONCAT(o.`total_paid_real`, ' ', cu.`sign`) AS `Total`,
	o.`date_add` AS `Date`
FROM `ps_orders` o
LEFT JOIN `ps_customer` c ON (o.`id_customer` = c.`id_customer`)
LEFT JOIN `ps_carrier` ca ON (o.id_carrier = ca.id_carrier)
LEFT JOIN `ps_currency` cu ON (o.`id_currency` = cu.`id_currency`)