SQL UPDATE-setningen brukes til å endre eksisterende poster i en tabell. Den lar deg endre én eller flere kolonneverdier for spesifikke rader ved å bruke WHERE-leddet. Uten en WHERE-betingelse vil alle rader i tabellen bli oppdatert.
Eksempel: Først vil vi skape en demo SQL-database og tabell som vi skal bruke kommandoen UPDATE Statement på.
Spørsmål:
UPDATE Employees
SET Salary = 65000
WHERE Name = 'Bob';
Syntaks:
UPDATE table_name
SET column1 = value1 column2 = value2...
WHERE condition
- tabellnavn: Navn på tabellen du vil oppdatere.
- SETT: Kolonnen(e) du vil oppdatere og deres nye verdier.
- HVOR: Filtrerer de spesifikke radene du vil oppdatere.
Note: SET nøkkelordet tildeler nye verdier til kolonner mens WHERE-leddet velger hvilke rader som skal oppdateres. Uten HVOR vil alle rader bli oppdatert.
Eksempler på SQL UPDATE-erklæring
La oss begynne med å lage en kundetabell med noen eksempeldata. Denne tabellen inneholder hver kundes unike ID-navn etternavn telefonnummer og land. Vi vil bruke den til å demonstrere hvordan UPDATE-setningen fungerer i SQL.
Spørsmål:
LAG TABELL-kunde (
Kunde-ID INT PRIMÆR NØKKEL
Kundenavn VARCHAR(50)
Etternavn VARCHAR(50)
Land VARCHAR(50)
Alder INT
Telefon VARCHAR(15)
);
-- Sett inn eksempeldata
INSERT INTO Customer (CustomerID CustomerName Etternavn Land Alder Telefon)
VERDIERfotnoter markering(1 'Liam' 'Brown' 'United Kingdom' 25 '441234567890')
(2 'Sofia' 'Martinez' 'Spain' 23 '341234567890')
(3 'Akira' 'Tanaka' 'Japan' 26 '811234567890')
(4 'Hans' 'Müller' 'Tyskland' 27 '491234567890')
(5 'Olivia' 'Dubois' 'Frankrike' 24 '331234567890');
Produksjon:
Eksempel 1: Oppdater enkeltkolonne ved hjelp av UPDATE-erklæring
Vi har en kundetabell og vi ønsker å oppdatere kundenavnet der alderen er 22.
Spørsmål:
UPDATE Customer
SET CustomerName = 'Isabella'
WHERE Age = 23;
Produksjon:
Forklaring:
- Spørringen oppdaterer kundenavnet til "Isabella"
- Det påvirker bare raden der Alder = 23
- Brukes til å endre eksisterende data i en spesifikk post.
Eksempel 2: Oppdatering av flere kolonner ved hjelp av UPDATE Statement
Vi må oppdatere både kundenavnet og landet for en bestemt kunde-ID.
Spørsmål:
UPDATE Customer
SET CustomerName = 'John'
Country = 'Spain'
WHERE CustomerID = 1;
Produksjon :
Forklaring:
- Spørringen retter seg mot raden der CustomerID = 1.
- Den oppdaterer kundenavn til "John" og land til "Spania".
- Begge kolonnene oppdateres samtidig i en enkelt SQL-setning.
Note: For å oppdatere flere kolonner har vi brukt komma() for å skille navnene og verdiene til to kolonner.
nettverksoperativsystem
Eksempel 3: Utelatelse av WHERE-klausul i UPDATE-erklæring
Hvis vi ved et uhell utelater WHERE-klausulen vil alle radene i tabellen bli oppdatert, noe som er en vanlig feil. La oss oppdatere kundenavnet for hver post i tabellen:
Spørsmål:
UPDATE Customer
SET CustomerName = 'ALice';
Produksjon
Forklaring:
- Spørringen oppdateres hver rad i kundetabellen.
- Den setter CustomerName-kolonnen til 'Alice' for alle poster.
- Siden det ikke er noen WHERE-klausul, gjelder endringen for hele tabellen.