La UPDATE
peut être utilisée pour mettre à jour les données d'une table.
Le WHERE
La clause peut être utilisée pour spécifier exactement quelles lignes doivent être mises à jour.
Vous pouvez mettre à jour toutes les lignes, certaines lignes ou aucune, selon les conditions de filtrage appliquées par WHERE
clause.
Une mise à jour simple
Voici une mise à jour simple qui modifie le numéro d'artiste 16 aux mères de l'invention :
UPDATE Artists SET ArtistName = 'Mothers of Invention' WHERE ArtistId = 16;
Et vérifiez la mise à jour avec un SELECT
rapide :
sqlite> SELECT * FROM Artists WHERE ArtistId = 16; ArtistId ArtistName Bio -------------------- -------------------------------------------------- ---------- 16 Mothers of Invention
Mettre à jour toutes les lignes
Vous pouvez mettre à jour toutes les lignes d'une table simplement en omettant le WHERE
clause.
Essayons :
UPDATE Artists SET Bio = 'Australian jazz band centred around polyrhythms.';
Et vérifiez-le avec un SELECT
déclaration :
sqlite> SELECT ArtistName, Bio FROM Artists; ArtistName Bio -------------------- -------------------------------------------------- Joe Satriani Australian jazz band centred around polyrhythms. Steve Vai Australian jazz band centred around polyrhythms. The Tea Party Australian jazz band centred around polyrhythms. Noiseworks Australian jazz band centred around polyrhythms. Wayne Jury Australian jazz band centred around polyrhythms. Mr Percival Australian jazz band centred around polyrhythms. Iron Maiden Australian jazz band centred around polyrhythms. Atmasphere Australian jazz band centred around polyrhythms. Ian Moss Australian jazz band centred around polyrhythms. Magnum Australian jazz band centred around polyrhythms. Strapping Young Lad Australian jazz band centred around polyrhythms. Slayer Australian jazz band centred around polyrhythms. Primus Australian jazz band centred around polyrhythms. Pat Metheny Australian jazz band centred around polyrhythms. Frank Gambale Australian jazz band centred around polyrhythms. Mothers of Invention Australian jazz band centred around polyrhythms. The Wiggles Australian jazz band centred around polyrhythms.
Oups! Je ne pense pas que tous ces groupes soient des groupes de jazz australiens centrés sur les polyrythmies.
Ne vous inquiétez pas, nous pouvons résoudre ce problème. Nous pouvons définir cette colonne sur NULL
pour tous les artistes auxquels cette biographie ne s'applique pas. Dans ce cas, la biographie ne s'applique qu'à l'identifiant d'artiste 8
nous allons donc annuler toutes les lignes où
ArtistId
n'est pas égal à
8
.
UPDATE Artists SET Bio = NULL WHERE ArtistId <> 8;
Et maintenant, la biographie n'est stockée que pour le bon artiste.
sqlite> SELECT ArtistName, Bio FROM Artists; ArtistName Bio -------------------- -------------------------------------------------- Joe Satriani Steve Vai The Tea Party Noiseworks Wayne Jury Mr Percival Iron Maiden Atmasphere Australian jazz band centred around polyrhythms. Ian Moss Magnum Strapping Young Lad Slayer Primus Pat Metheny Frank Gambale Mothers of Invention The Wiggles
Attention !
Il est extrêmement pratique pour nous que tous les bios contenaient auparavant NULL
valeurs. Cela signifiait que nous pouvions simplement les remettre à NULL
et éloignez-vous.
Cela aurait été beaucoup plus délicat si les autres artistes avaient déjà une biographie complète. Les remettre à NULL
ne ramène pas leur ancien bios. Soyez donc prudent lors de la mise à jour des données.