mathématiques (ECT 1re année) · Chapitre 13 · Exercice
Trois requêtes de mise à jour
Informatique et algorithmique · Bases de données · niveau 2
Énoncé
Avec les tables clients(id, nom, ville, remise) et commandes(num, id_client, produit, montant), écrire les requêtes qui : ajoutent le client ; portent à la remise de tous les clients de Lille ; suppriment les commandes de montant nul.
Corrigé
INSERT INTO clients
VALUES (21, 'Bernard', 'Lille', 0);
UPDATE clients
SET remise = 8
WHERE ville = 'Lille';
DELETE FROM commandes
WHERE montant = 0;
L'ordre des valeurs compte. VALUES suit l'ordre des colonnes du schéma. Intervertir la ville et le nom passerait sans erreur visible, les deux étant du type TEXT — et corromprait la base. D'où le réflexe : avant tout DELETE ou UPDATE, écrire d'abord le SELECT avec le même WHERE pour voir quelles lignes seront touchées.