Leçon 9 / 10 — Chapitre 6: Modifier les données avec rigueur
Tester une modification avec SELECT avant de l'exécuter
Avant d'exécuter un UPDATE ou un DELETE, exécuter d'abord un SELECT avec exactement la même clause WHERE permet de voir précisément quelles lignes seraient touchées — sans rien modifier.
SELECT * FROM abonnes
WHERE statut = 'inactif'
AND id NOT IN (SELECT abonne_id FROM inscriptions);
Si ce SELECT renvoie les lignes attendues (ici, les abonnés inactifs et sans aucune inscription), la même condition WHERE peut alors être reprise telle quelle dans un DELETE FROM abonnes WHERE ... : le nombre de lignes supprimées sera exactement celui que le SELECT avait annoncé.
À retenir :
SELECT * FROM table WHERE condition;avec la même condition qu'un futurUPDATE/DELETErévèle à l'avance les lignes qui seraient touchées.- Le nombre de lignes renvoyées par ce
SELECTcorrespond exactement au nombre de lignes que modifierait ou supprimerait l'instruction équivalente sur la même condition. - Cette habitude coûte une requête de plus, mais évite des suppressions ou modifications inattendues sur une condition mal formulée.
À vous de jouer : si ce SELECT renvoyait 0 ligne, que cela vous apprendrait-il avant même d'exécuter un DELETE équivalent ?
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 80 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès