Riepilogo :in questo tutorial imparerai come usare SQLite UPDATE
istruzione per aggiornare i dati delle righe esistenti nella tabella.
Introduzione a SQLite UPDATE
dichiarazione
Per aggiornare i dati esistenti in una tabella, usi SQLite UPDATE
dichiarazione. Di seguito viene illustrata la sintassi di UPDATE
dichiarazione:
UPDATE table
SET column_1 = new_value_1,
column_2 = new_value_2
WHERE
search_condition
ORDER column_or_expression
LIMIT row_count OFFSET offset;
Code language: SQL (Structured Query Language) (sql)
In questa sintassi:
- In primo luogo, specifica la tabella in cui desideri aggiornare dopo l'
UPDATE
clausola. - In secondo luogo, imposta un nuovo valore per ogni colonna della tabella nel
SET
clausola. - In terzo luogo, specifica le righe da aggiornare utilizzando una condizione in
WHERE
clausola. IlWHERE
la clausola è facoltativa. Se lo salti, ilUPDATE
aggiornerà i dati in tutte le righe della tabella. - Infine, usa il
ORDER BY
eLIMIT
clausole inUPDATE
istruzione per specificare il numero di righe da aggiornare.
Nota che se usa un valore negativo nel LIMIT
clausola, SQLite presuppone che non vi siano limiti e aggiorna tutte le righe che soddisfano la condizione nel precedente WHERE
clausola.
Il ORDER BY
la clausola dovrebbe sempre andare con il LIMIT
clausola per specificare esattamente quali righe devono essere aggiornate. In caso contrario, non saprai mai quale riga verrà effettivamente aggiornata; perché senza il ORDER BY
clausola, l'ordine delle righe nella tabella non è specificato.
SQLite UPDATE
esempi di affermazioni
Useremo i employees
tabella nel database di esempio per dimostrare l'UPDATE
dichiarazione.
Il seguente SELECT
istruzione ottiene dati parziali dai employees
tabella:
SELECT
employeeid,
firstname,
lastname,
title,
email
FROM
employees;
Code language: SQL (Structured Query Language) (sql)
Provalo
1) Aggiorna un esempio di colonna
Supponiamo che Jane si sia sposata e volesse cambiare il suo cognome con il cognome di suo marito, cioè Smith
. In questo caso, puoi aggiornare il cognome di Jane utilizzando la seguente istruzione:
UPDATE employees
SET lastname = 'Smith'
WHERE employeeid = 3;
Code language: SQL (Structured Query Language) (sql)
Provalo
L'espressione nel WHERE
La clausola assicura che aggiorniamo solo il record di Jane. Impostiamo il lastname
colonna in una stringa letterale 'Smith'
.
Per verificare l'UPDATE
, utilizzi la seguente istruzione:
SELECT
employeeid,
firstname,
lastname,
title,
email
FROM
employees
WHERE
employeeid = 3;
Code language: SQL (Structured Query Language) (sql)
Provalo
2) Aggiorna più colonne esempio
Supponiamo Park Margaret
si trova in Toronto
e vuoi cambiare le sue informazioni su indirizzo, città e stato. Puoi usare il UPDATE
istruzione per aggiornare più colonne come segue:
UPDATE employees
SET city = 'Toronto',
state = 'ON',
postalcode = 'M5P 2N7'
WHERE
employeeid = 4;
Code language: SQL (Structured Query Language) (sql)
Provalo
Per verificare l'UPDATE
, utilizzi la seguente istruzione:
SELECT
employeeid,
firstname,
lastname,
state,
city,
PostalCode
FROM
employees
WHERE
employeeid = 4;
Code language: SQL (Structured Query Language) (sql)
Provalo
3) Aggiorna con ORDER BY
e LIMIT
esempio di clausole
Nota che devi compilare SQLite con l'opzione SQLITE_ENABLE_UPDATE_DELETE_LIMIT per eseguire UPDATE
istruzione con ORDER BY
opzionale e LIMIT
clausole.
Controlliamo gli indirizzi email dei dipendenti in employees
tabella:
SELECT
employeeid,
firstname,
lastname,
email
FROM
employees;
Code language: SQL (Structured Query Language) (sql)
Provalo
Per aggiornare una riga in employees
tabella, usi LIMIT 1
clausola. Per essere sicuro di aggiornare la prima riga di dipendenti ordinati per nome, aggiungi il ORDER BY firstname
clausola.
Quindi la seguente dichiarazione aggiorna l'email di Andrew Adams
:
UPDATE employees
SET email = LOWER(
firstname || "." || lastname || "@chinookcorp.com"
)
ORDER BY
firstname
LIMIT 1;
Code language: SQL (Structured Query Language) (sql)
Provalo
La nuova email è la combinazione di nome, punto (.), cognome e suffisso @chinookcorp.com
Il LOWER()
la funzione converte l'e-mail in minuscolo.
4) Aggiorna tutte le righe esempio
Per aggiornare tutte le righe in employees
tabella, salti il WHERE
clausola. Ad esempio, il seguente UPDATE
l'istruzione cambia tutti gli indirizzi e-mail di tutti i dipendenti in minuscolo:
UPDATE employees
SET email = LOWER(
firstname || "." || lastname || "@chinookcorp.com"
);
Code language: SQL (Structured Query Language) (sql)
Provalo
In questo tutorial, hai imparato come usare SQLite UPDATE
istruzione per aggiornare i dati esistenti in una tabella.
Riferimenti
- https://www.sqlite.org/lang_update.html – Dichiarazione di aggiornamento SQLite