Update (SQL)

SQL valodā komanda UPDATE izmaina datus vienā vai vairākos ierakstos. Datus var izmainīt vai nu visās rindās vai arī izvēlētajās rindās, izmantojot nosacījumu.

Pielietojums

UPDATE komandai ir sekojoša sintakse:

UPDATE tabulas_nosaukums SET kolonnas_nosaukums = vērtība [, kolonnas_nosaukums = vērtība ...] [WHERE nosacījums]

Lai UPDATE komanda būtu veiksmīga, lietotājam ir jābūt ar datu manipulācijas privilēģijām un jaunie dati nedrīkst radīt konfliktu.

Piemēri

Tabulā T izmainīt kolonnas C1 vērtību uz 1 tikai tām rindām, kurām kolonnas C2 vērtība ir "a".

 UPDATE T SET C1 = 1 WHERE C2 = 'a'

Tabulā T izmainīt kolonnas C1 vērtību uz 9 un kolonnas C3 vērtību uz 4 tikai tām rindām, kurām kolonnas C2 vērtība ir "a".

 UPDATE T SET C1 = 9, C3 = 4 WHERE C2 = 'a'

Paaugstināt kolonnas C1 vērtību par 1, ja kolonnas C2 vērtība ir "a".

 UPDATE T SET C1 = C1 + 1 WHERE C2 = 'a'

Kolonas C1 vērtības sākumā pievienot tekstu "text", ja kolonas C2 vērtība ir "a".

 UPDATE T SET C1 = 'text' || C1 WHERE C2 = 'a'

Tabulā T1 izmainīt kolonnas C1 vērtību uz 2 tikai tad, ja kolonnas C2 vērtība ir atrodama tabulas T2 kolonnā C3 un kolonnas C4 vērtība ir 0.

     UPDATE T1      SET    C1 = 2         WHERE  C2 IN ( SELECT C3               FROM   T2               WHERE  C4 = 0)

Vienā komandā var tikt izlabotas vairākas kolonnas:

 UPDATE T SET C1 = 1, C2 = 2

Ir iespējami arī kompleksi nosacījumi:

 UPDATE T SET A = 1 WHERE C1 = 1 AND C2 = 2
 UPDATE a     SET a.[kolonna] = vērtība     FROM articles a      JOIN classification c      ON a.articleID = c.articleID      WHERE c.classID = 1


Ārējās saites