SQL UPDATE-sætningen bruges til at ændre eksisterende poster i en tabel. Det giver dig mulighed for at ændre en eller flere kolonneværdier for specifikke rækker ved hjælp af WHERE-sætningen. Uden en WHERE-betingelse vil alle rækker i tabellen blive opdateret.
Eksempel: Først vil vi skabe en demo SQL-database og -tabel, hvorpå vi vil bruge kommandoen UPDATE Statement.
Forespørgsel:
UPDATE Employees
SET Salary = 65000
WHERE Name = 'Bob';
Syntaks:
UPDATE table_name
SET column1 = value1 column2 = value2...
WHERE condition
- tabelnavn: Navnet på den tabel, du vil opdatere.
- SÆT: Den eller de kolonner, du vil opdatere, og deres nye værdier.
- HVOR: Filtrerer de specifikke rækker, du vil opdatere.
Note: SET nøgleordet tildeler nye værdier til kolonner, mens WHERE-sætningen vælger, hvilke rækker der skal opdateres. Uden WHERE vil alle rækker blive opdateret.
Eksempler på SQL UPDATE-erklæring
Lad os begynde med at oprette en kundetabel med nogle eksempeldata. Denne tabel indeholder hver kundes unikke ID-navn efternavn telefonnummer og land. Vi vil bruge det til at demonstrere, hvordan UPDATE-sætningen fungerer i SQL.
Forespørgsel:
OPRET TABEL-kunde (
Kunde-ID INT PRIMÆR NØGLE
Kundenavn VARCHAR(50)
Efternavn VARCHAR(50)
Land VARCHAR(50)
Alder INT
Telefon VARCHAR(15)
);
-- Indsæt eksempeldata
INDSÆT I Kunde (Kunde-ID Kundenavn Efternavn Land Alder Telefon)
VÆRDIERafmærkning af fodnoter(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' 'Frankrig' 24 '331234567890');
Produktion:
Eksempel 1: Opdater enkelt kolonne ved hjælp af UPDATE-erklæring
Vi har en kundetabel, og vi ønsker at opdatere kundenavnet, hvor alderen er 22.
Forespørgsel:
UPDATE Customer
SET CustomerName = 'Isabella'
WHERE Age = 23;
Produktion:
Forklaring:
- Forespørgslen opdaterer kundenavnet til 'Isabella'
- Det påvirker kun rækken, hvor Alder = 23
- Bruges til at ændre eksisterende data i en specifik post.
Eksempel 2: Opdatering af flere kolonner ved hjælp af UPDATE-erklæring
Vi skal opdatere både kundenavn og land for et specifikt kunde-id.
Forespørgsel:
UPDATE Customer
SET CustomerName = 'John'
Country = 'Spain'
WHERE CustomerID = 1;
Produktion :
Forklaring:
- Forespørgslen er målrettet den række, hvor kunde-id = 1.
- Den opdaterer kundenavn til 'John' og land til 'Spanien'.
- Begge kolonner opdateres samtidigt i en enkelt SQL-sætning.
Note: Til opdatering af flere kolonner har vi brugt komma() til at adskille navnene og værdierne på to kolonner.
gør mens java
Eksempel 3: Udeladelse af WHERE-klausul i UPDATE-erklæring
Hvis vi ved et uheld udelader WHERE-sætningen, vil alle rækkerne i tabellen blive opdateret, hvilket er en almindelig fejl. Lad os opdatere kundenavnet for hver post i tabellen:
Forespørgsel:
UPDATE Customer
SET CustomerName = 'ALice';
Produktion
Forklaring:
- Forespørgslen opdaterer hver række i kundetabellen.
- Den indstiller kolonnen Kundenavn til 'Alice' for alle poster.
- Da der ikke er nogen WHERE-klausul, gælder ændringen for hele tabellen.