Istruzione UPDATE
Utilizzare l'istruzione UPDATE
per cambiare i record in una tabella di database. Il formato dell'istruzione UPDATE
è:
UPDATE nome_tabella SET nome_colonna = expr, ... [ WHERE { condizioni } ]
nome_colonna
è il nome di una colonna di cui si desidera modificare il valore. È possibile modificare più colonne in una singola istruzione.
expr
è il nuovo valore della colonna.
In genere, le espressioni sono valori costanti per le colonne (ma possono anche essere una subquery). È necessario racchiudere i valori delle stringhe di caratteri tra coppie di virgolette singole ('). Per includere una virgoletta singola nel valore di una stringa di caratteri racchiusa tra virgolette singole, usare due virgolette singole insieme (ad esempio, 'L''aquilone'
).
Le subquery devono essere racchiuse tra parentesi.
La clausola WHERE
può essere una qualsiasi clausola valida. Determina i record da aggiornare.
Istruzione UPDATE
eseguita sulla tabella dip.
UPDATE dip SET stipendio=32000; detrazioni=1 WHERE id_dip = 'E10001'
L'istruzione UPDATE
modifica tutti i record che soddisfano le condizioni della clausola WHERE
. In questo caso vengono modificati lo stipendio e lo stato delle detrazioni per tutti i dipendenti il cui codice è E10001
. Poiché nella tabella Dipendenti i codici dei dipendenti sono unici, viene aggiornato un solo record.
Istruzione UPDATE
eseguita sulla tabella dip con una subquery.
UPDATE dip SET stipendio = (SELECT avg(stipendio) from dip) WHERE id_dip = 'E10001'
In questo caso lo stipendio del dipendente il cui codice è E10001
viene sostituito con lo stipendio medio della società.
Nei campi Contenitore, è possibile aggiornare (UPDATE
) solo con testo, a meno che si prepari un'istruzione parametrizzata e si effettui lo streaming dei dati dall'applicazione. Per utilizzare dati binari, è sufficiente assegnare il nome del file racchiudendolo tra virgolette singole o utilizzare la funzione PutAs()
. Quando si specifica il nome file, il tipo file viene dedotto dall'estensione del file:
UPDATE nome_tabella SET (nome_contenitore)=? AS 'nome file.estensione file'
I tipi di file non supportati sono inseriti come tipo FILE.
Quando si utilizza la funzione PutAs()
, specificare il tipo: PutAs(col, 'tipo')
, dove il valore del tipo è un tipo file supportato come descritto in Recupero dei contenuti di un campo Contenitore: funzione CAST() e funzione RicavaCome().