Stavek UPDATE uporabljamo za spreminjanje obstoječih podatkov v tabeli. Z njim lahko popravimo eno vrstico, več vrstic ali pa vse vrstice v tabeli.
Osnovna sintaksa stavka UPDATE
UPDATE ime_tabele
SET polje_1 = vrednost_1
WHERE pogoj;
Za besedo UPDATE napišemo ime tabele, za besedo SET pa določimo stolpec in njegovo novo vrednost. Pogoj WHERE določa, katere vrstice želimo spremeniti.
Primer:
UPDATE drzave
SET bdp = 10
WHERE drzava = 'Slovenija';
Ta primer spremeni vrednost stolpca bdp pri vrstici, kjer je država Slovenija.
Spreminjanje več stolpcev hkrati
Z enim stavkom UPDATE lahko spremenimo tudi več stolpcev:
UPDATE dijaki
SET ime = 'Ana',
priimek = 'Novak'
WHERE id = 5;
V tem primeru spremenimo dve vrednosti v isti vrstici.
UPDATE brez pogoja WHERE
Če izpustimo pogoj WHERE, se spremenijo vse vrstice v tabeli.
UPDATE dijaki
SET oddelek = '4a';
Pri stavku UPDATE moramo biti zelo previdni. Če izpustimo pogoj WHERE, spremenimo vse vrstice v tabeli.
Uporaba DEFAULT
Če ima stolpec določeno privzeto vrednost, lahko uporabimo tudi besedo DEFAULT:
UPDATE uporabniki
SET status = DEFAULT
WHERE id = 3;
V tem primeru se stolpec status nastavi na svojo privzeto vrednost.
ORDER BY in LIMIT
Pri enotabelnem stavku UPDATE lahko uporabimo tudi ORDER BY in LIMIT. To je uporabno, kadar želimo spremeniti samo določeno število vrstic.
UPDATE dijaki
SET oddelek = '4b'
ORDER BY priimek
LIMIT 3;
Ta primer spremeni samo prve tri vrstice glede na razvrstitev po priimku.
Dober način dela
Preden izvedemo UPDATE, je dobro z enakim pogojem najprej preveriti, katere vrstice bomo spreminjali:
SELECT * FROM drzave
WHERE drzava = 'Slovenija';
UPDATE drzave
SET bdp = 10
WHERE drzava = 'Slovenija';
Tako zmanjšamo možnost, da bi po pomoti spremenili napačne podatke.