Il UPDATE
istruzione può essere utilizzata per aggiornare i dati in una tabella.
Il WHERE
può essere utilizzata per specificare esattamente quali righe devono essere aggiornate.
Puoi aggiornare tutte le righe, alcune righe o nessuna, a seconda delle condizioni di filtro applicate da WHERE
clausola.
Un semplice aggiornamento
Ecco un semplice aggiornamento che cambia il numero artista 16 a Madre dell'invenzione :
UPDATE Artists SET ArtistName = 'Mothers of Invention' WHERE ArtistId = 16;
E verifica l'aggiornamento con un rapido SELECT
:
sqlite> SELECT * FROM Artists WHERE ArtistId = 16; ArtistId ArtistName Bio -------------------- -------------------------------------------------- ---------- 16 Mothers of Invention
Aggiorna tutte le righe
Puoi aggiornare tutte le righe di una tabella semplicemente omettendo WHERE
clausola.
Proviamolo:
UPDATE Artists SET Bio = 'Australian jazz band centred around polyrhythms.';
E controllalo con un SELECT
dichiarazione:
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.
Ops! Non credo che tutte queste band siano band jazz australiane incentrate sui poliritmi.
Non preoccuparti, possiamo risolverlo. Possiamo impostare quella colonna su NULL
per tutti gli artisti a cui questa biografia non si applica. In questo caso, la biografia si applica solo all'ID artista 8
quindi annulleremo tutte le righe in cui
ArtistId
non è uguale a
8
.
UPDATE Artists SET Bio = NULL WHERE ArtistId <> 8;
E ora la biografia viene archiviata solo per l'artista corretto.
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
Attenzione!
È estremamente conveniente per noi che tutte le biografie in precedenza contenessero NULL
valori. Ciò significava che potevamo semplicemente reimpostarli su NULL
e vai via.
Sarebbe stato molto più complicato se gli altri artisti avessero già un bios completo. Riportandoli a NULL
non riporta il loro vecchio bios. Quindi fai attenzione quando aggiorni i dati.