Modification de la base de données
ps_db_execute
- ProTellMyShop Pro uniquement
- Écriture · aperçu + validation
- Enregistre: interrupteur Maintenance (3 h)
- Maintenance · interrupteur, 3 h
- Visible dès l’installation
Avec l’interrupteur Maintenance activé, fait une modification directe dans la base de données de la boutique après avoir montré combien de lignes elle touche, et garde une copie de ces lignes pour que la modification puisse être annulée.
TellMyShop Free: Non. Cet outil fait uniquement partie de TellMyShop Pro. TellMyShop Free ne contient que des rapports prêts à l’emploi qui lisent votre boutique.
Demandez au chat
« Mets le message de disponibilité « Ships within 24 hours » sur toutes les pages produit en anglais où il est vide. »
Exemple d’aperçu
UPDATE ps_product_lang SET available_now = 'Ships within 24 hours' WHERE id_lang = 2 AND available_now = '' : 38 lignes vont changer (limite 100). Échantillon : id_product 45, 77, 112 (available_now : vide). Une copie des 38 lignes sera conservée pour l’annulation.
Détails techniques
DOMAINE MAINTENANCE. Modifie la base de données : INSERT, UPDATE, DELETE, REPLACE (une seule instruction). Préfixe des tables ps_. L’aperçu montre combien de lignes vont changer et un échantillon. S’exécute dans une transaction : si plus de lignes que max_rows changent, elle est annulée. UPDATE et DELETE sur une seule table gardent une copie des lignes concernées (annulation avec ps_revert_change). UPDATE ou DELETE sans WHERE exige all_rows=true. ALTER, CREATE, DROP et TRUNCATE uniquement avec allow_ddl=true, et ils NE PEUVENT PAS ÊTRE ANNULÉS. Une modification de la base de données contourne PrestaShop : les hooks des modules ne s’exécutent pas et le cache n’est pas vidé ; si un autre outil peut faire la modification, Claude utilise donc cet outil. Mêmes tables bloquées et mêmes règles sur les données clients que ps_db_query.
Paramètres
| Nom | Type | Obligatoire | Description |
|---|---|---|---|
| sql | string | oui | Instruction SQL. 50 000 caractères maximum. |
| max_rows | integer | non | Nombre maximal de lignes modifiées (fusible de sécurité). De 1 à 1000. 100 par défaut. |
| all_rows | boolean | non | true = exécuter délibérément UPDATE/DELETE sans WHERE. Par défaut false. |
| allow_ddl | boolean | non | true = autoriser ALTER/CREATE/DROP/TRUNCATE (ne peut pas être annulé). Par défaut false. |
| confirm | boolean | non | false (par défaut) renvoie un aperçu et n’enregistre rien. true exécute, uniquement après que l’utilisateur a validé l’aperçu, avec change_token. |
| change_token | string | quand | Jeton issu de l’aperçu. Obligatoire avec confirm=true. Valable 30 minutes, à usage unique, lié aux arguments et à l’état des données de l’aperçu. |
Limites
Exige l’interrupteur Maintenance, que le propriétaire active pour 3 heures. Une instruction, 50 000 caractères maximum. max_rows : 100 par défaut, 1000 maximum. Copie des lignes pour l’annulation uniquement pour un UPDATE/DELETE sur une seule table, jusqu’à 1000 lignes. Les modifications de structure (DDL) ne peuvent pas être annulées.
Ce que vous voyez avant tout enregistrement
Le chat appelle d’abord l’outil sans le confirmer. Le module renvoie un aperçu (valeurs actuelles et nouvelles) et un jeton à usage unique valable 30 minutes. Le chat vous montre l’aperçu et n’enregistre la modification qu’après votre oui.
Outils liés
- Requête sur la base de données (lecture) ps_db_query
- Annuler une modification ps_revert_change
- Lister les modifications ps_list_changes
Cas d’usage avec cet outil
- Corriger des données en masse, testé d’abord sur une copie de test
- Trouver les lignes orphelines et les données résiduelles dans la base
- Corriger un mauvais import sur des centaines de produits, avec une copie de chaque modification
Dernière mise à jour: 2026-10-11