picoSQL - Manuale di riferimento


REPLACE (rel. 1.2)


Sintassi:

Formato 1:

REPLACE INTO nome-tabella [(nome-colonna [, nome-colonna]...)]

VALUES (espressione |NULL [, espressione | NULL] ...)


Formato 2:

REPLACE INTO nome-tabella [(nome-colonna [, nome-colonna]...)]

interrogazione

Scopo:

Permette l'inserimento o la sovrascrittura di una o più righe in una tabella


Vedi anche:

INSERT, DELETE


Descrizione:


Questo comando è analogo a INSERT, con la differenza che nel caso la riga non possa essere inserita a causa di un indice univoco che verrebbe duplicato, REPLACE sovrascrive l'intera riga che contiene il valore univoco. Da un punto di vista logico quindi usare REPLACE equivale ad eseguire prima un DELETE sulla tabella in base al primo indice univoco e successivamente una INSERT con i valori specificati. In pratica però l'operazione viene fatta in modo atomico, vale a dire che sulla tabella non esiste un momento in cui siano assenti sia la vecchia riga che la nuova, ed è molto più efficiente dell'esecuzione di DELETE e INSERT. Un errore per indice duplicato quindi si può avere solo se sulla tabella sono presenti più di un indice univoco e se la sovrascrittura provocasse la duplicazione di un indice univoco successivo al primo.


Indice Precedente Successivo