Base de données PrestaShop : Les tables clés que tout propriétaire de boutique devrait connaître
Pourquoi comprendre la base de données est important
PrestaShop stocke tout — produits, commandes, clients, paramètres, traductions, images, prix — dans une base de données MySQL. Comprendre la structure de la base de données vous donne des super-pouvoirs pour diagnostiquer les problèmes, effectuer des opérations en masse et récupérer des erreurs.
Tables des produits
ps_product
La table principale des produits avec les données fondamentales -
| Colonne | Rôle |
|---|---|
| id_product | Identifiant unique du produit |
| price | Prix de base (HT) |
| reference | Référence/SKU du produit |
| active | Activé (1) ou désactivé (0) |
ps_product_lang
Données produit spécifiques à chaque langue - nom, description, méta titre, URL.
ps_stock_available
La table de suivi des stocks réelle.
SELECT * FROM ps_stock_available
WHERE id_product = 42 AND id_product_attribute = 0;Tables des commandes
ps_orders
La table commerciale la plus importante. Chaque ligne est une commande complétée.
ps_order_detail
Les lignes individuelles d'une commande avec produit, quantité et prix.
SELECT o.reference, o.date_add, o.total_paid_tax_incl,
od.product_name, od.product_quantity, od.unit_price_tax_incl
FROM ps_orders o
JOIN ps_order_detail od ON o.id_order = od.id_order
WHERE o.id_order = 12345;Tables des clients
ps_customer
Comptes clients avec email, mot de passe hashé, nom, statut newsletter.
SELECT c.id_customer, c.email, c.firstname, c.date_add
FROM ps_customer c
LEFT JOIN ps_orders o ON c.id_customer = o.id_customer
WHERE o.id_order IS NULL AND c.active = 1;ps_address
Adresses clients liées via id_customer.
Tables du panier
ps_cart et ps_cart_product
Paniers et leurs produits. Les paniers abandonnés restent ici.
SELECT c.id_cart, cu.email, c.date_add
FROM ps_cart c
JOIN ps_customer cu ON c.id_customer = cu.id_customer
LEFT JOIN ps_orders o ON c.id_cart = o.id_cart
WHERE o.id_order IS NULL
AND c.date_add > DATE_SUB(NOW(), INTERVAL 7 DAY);Tables de configuration
ps_configuration
Stockage clé-valeur pour tous les paramètres.
SELECT name, value FROM ps_configuration
WHERE name IN ('PS_SHOP_DOMAIN', 'PS_SSL_ENABLED', 'PS_SHOP_ENABLE');Tables des modules et hooks
ps_module, ps_hook, ps_hook_module
Modules, hooks et leurs associations. ps_hook_module contrôle l'ordre d'exécution.
Opérations courantes
-- Augmentation de prix de 10%
UPDATE ps_product SET price = price * 1.10;
-- Désactiver les produits en rupture
UPDATE ps_product p
JOIN ps_stock_available sa ON p.id_product = sa.id_product
SET p.active = 0
WHERE sa.quantity <= 0 AND sa.id_product_attribute = 0;Règles de sécurité de la base de données
- Toujours sauvegarder avant de modifier
- Ne jamais modifier ps_shop_url directement
- Tester les requêtes avec SELECT avant UPDATE ou DELETE
Cette réponse vous a-t-elle été utile ?
Vous avez encore des questions ?
Can't find what you're looking for? Send us your question and we'll get back to you quickly.