Update (SQL)

Vikipēdijas raksts
Pārlēkt uz: navigācija, meklēt

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[labot šo sadaļu | labot pirmkodu]

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[labot šo sadaļu | labot pirmkodu]

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[labot šo sadaļu | labot pirmkodu]