SQL UPDATE -käskyä käytetään taulukon olemassa olevien tietueiden muokkaamiseen. Sen avulla voit muuttaa yhtä tai useampaa sarakearvoa tietyille riveille käyttämällä WHERE-lausetta. Ilman WHERE-ehtoa kaikki taulukon rivit päivitetään.
Esimerkki: Ensin me teemme luoda demo-SQL-tietokanta ja -taulukko, jossa käytämme UPDATE Statement -komentoa.
Kysely:
UPDATE Employees
SET Salary = 65000
WHERE Name = 'Bob';
Syntaksi:
UPDATE table_name
SET column1 = value1 column2 = value2...
WHERE condition
- taulukon_nimi: Päivitettävän taulukon nimi.
- SARJA: Päivitettävät sarakkeet ja niiden uudet arvot.
- JOSSA: Suodattaa tietyt rivit, jotka haluat päivittää.
Huomautus: SET-avainsana määrittää sarakkeille uusia arvoja, kun taas WHERE-lause valitsee päivitettävät rivit. Ilman WHERE-kohtaa kaikki rivit päivitetään.
Esimerkkejä SQL UPDATE -lausekkeesta
Aloitetaan luomalla asiakastaulukko, jossa on joitakin esimerkkitietoja. Tämä taulukko sisältää jokaisen asiakkaan yksilöllisen tunnuksen nimen sukunimi puhelinnumeron ja maan. Käytämme sitä osoittamaan, kuinka UPDATE-käsky toimii SQL:ssä.
Kysely:
CustomerID INT PRIMARY KEY
Sukunimi VARCHAR(50)
Maa VARCHAR(50)
Ikä INT
);
INSERT INTO Asiakkaaseen (CustomerID CustomerName Sukunimi Maa Ikä Puhelin)
ARVOT(1 'Liam' 'Brown' 'United Kingdom' 25 '441234567890')
(2 'Sofia' 'Martinez' 'Espanja' 23 '341234567890')
(3 'Akira' 'Tanaka' 'Japan' 26 '811234567890')
(4 'Hans' 'Müller' 'Germany' 27 '491234567890')
(5 'Olivia' 'Dubois' 'Ranska' 24 '331234567890');
Lähtö:
Esimerkki 1: Päivitä yksi sarake UPDATE-lausekkeen avulla
Meillä on asiakastaulukko ja haluamme päivittää asiakkaan nimen, jos ikä on 22 vuotta.
Kysely:
UPDATE Customer
SET CustomerName = 'Isabella'
WHERE Age = 23;
Lähtö:
Selitys:
- Kysely päivittää asiakkaan nimeksi "Isabella"
- Se vaikuttaa vain riviin, jossa Ikä = 23
- Käytetään tietyn tietueen olemassa olevien tietojen muokkaamiseen.
Esimerkki 2: Useiden sarakkeiden päivittäminen UPDATE-lausekkeen avulla
Meidän on päivitettävä sekä asiakkaan nimi että maa tietylle asiakastunnukselle.
Kysely:
UPDATE Customer
SET CustomerName = 'John'
Country = 'Spain'
WHERE CustomerID = 1;
Lähtö :
Selitys:
- Kysely kohdistaa riville, jossa Asiakastunnus = 1.
- Se päivittää CustomerNamen nimeksi "John" ja Countryiksi "Espanjaksi".
- Molemmat sarakkeet päivitetään samanaikaisesti yhdessä SQL-käskyssä.
Huomautus: Useiden sarakkeiden päivittämiseen olemme käyttäneet pilkkua () erottamaan kahden sarakkeen nimet ja arvot.
Esimerkki 3: WHERE-lauseen jättäminen pois UPDATE-lausekkeesta
Jos jätämme vahingossa pois WHERE-lauseen, kaikki taulukon rivit päivitetään, mikä on yleinen virhe. Päivitetään jokaisen taulukon tietueen CustomerName:
Kysely:
UPDATE Customer
SET CustomerName = 'ALice';
Lähtö
Selitys:
tyhjennä npm-välimuisti
- Kysely päivittää jokaisen asiakastaulukon rivin.
- Se asettaa CustomerName-sarakkeen arvoksi "Liisa" kaikille tietueille.
- Koska WHERE-lausetta ei ole, muutos koskee koko taulukkoa.