ALTER- og INSERT-operationer
Forestil dig en situation, hvor vi skal tilføje en kolonne til en eksisterende tabel. Det ville ikke være hensigtsmæssigt at slette tabellen (især hvis den allerede indeholder data) og derefter oprette en ny tabel og fylde den med data igen.
Derfor vil vi i dette kapitel se på ALTER-operationen.
Lad os se, hvordan denne operation anvendes:
CREATE TABLE library (
id INT PRIMARY KEY,
title VARCHAR(50) NOT NULL,
author VARCHAR(50),
pages INT
);
ALTER TABLE library ADD price DECIMAL DEFAULT 300;
ALTER TABLE library DROP COLUMN price;
Som du kan se, er dette scriptet til at oprette en tabel fra forrige kapitel.
Dernæst er der to ALTER-operationer. Den første operation tilføjer en price-kolonne til tabellen og angiver standardværdien til 300 for denne kolonne. Den anden operation fjerner denne kolonne:
ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;
Bemærk
Ved brug af
ALTER-sætningen kan du udføre forskellige skemaniveau-operationer på en tabel, såsom at tilføje eller fjerne begrænsninger, omdøbe, ændre datatyper samt tilføje eller fjerne indekser.
Lad os gå videre til en anden operation, nemlig indsættelsesoperationen.
For at bruge INSERT skal det angives, hvilke kolonner der skal tilføjes værdier til.
Her er syntaksen for denne erklæring:
INSERT INTO library (id, title, author, pages) VALUES
(1, 'CAMINO GHOSTS', 'John Grisham', '213'),
(2, 'FUNNY STORY', 'Emily Henry', '341');
Dette uddrag er fra det foregående kapitel og viser, hvordan data indsættes i tabellen library.
Her er en oversigt:
- Start med
INSERT INTOefterfulgt af tabelnavnet; - Angiv kolonnenavne i parentes;
- Brug
VALUEStil at angive data i samme rækkefølge som kolonnerne; - Sørg for, at datatyperne matcher kolonnerne;
- Afslut parenteserne og adskil rækker med kommaer.
Den generelle syntaks er:
INSERT INTO table_name (column1_name, column2_name) VALUES
(column1_value, column2_value),
(column1_value, column2_value),
...;
Glem ikke semikolonet til sidst!
Swipe to start coding
Der er en tom tabel kaldet employees med følgende kolonner:
employee_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2)
Det er den samme tabel som i de foregående afsnit, men nu indeholder denne tabel ingen data (rækker) overhovedet.
Din opgave er at:
- Tilføje en kolonne
countrytil denne tabel, som skal indeholde oplysninger om landet, hvor medarbejderen bor. - Indsætte 2 rækker data i tabellen, som skal se således ud:
id=1, first_name=Emily, last_name=Torres, department=Operations, salary=80000, country=United Kingdom.id=2, first_name=David, last_name=Bobr, department=Engineering, salary=95000, country=Poland.
For at løse denne opgave skal du bruge ALTER TABLE til den første delopgave og INSERT til den anden delopgave.
Bemærk
På højre side af kodeeditoren vil noget kode allerede være skrevet. Du må ikke slette eller ændre denne kode, da den er nødvendig for at tjekke korrektheden af din løsning.
Korte instruktioner
- Brug en ALTER TABLE-sætning til at tilføje en
country-kolonne af typenVARCHAR(50)tilemployees-tabellen. - Brug INSERT INTO til at tilføje to medarbejdere til
employees-tabellen. - Angiv i parentes kolonnerne i den korrekte rækkefølge, hvor du indsætter dataene.
- Indsæt to medarbejdere med de data, der er angivet i kravene.
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Fantastisk!
Completion rate forbedret til 4
ALTER- og INSERT-operationer
Stryg for at vise menuen
Forestil dig en situation, hvor vi skal tilføje en kolonne til en eksisterende tabel. Det ville ikke være hensigtsmæssigt at slette tabellen (især hvis den allerede indeholder data) og derefter oprette en ny tabel og fylde den med data igen.
Derfor vil vi i dette kapitel se på ALTER-operationen.
Lad os se, hvordan denne operation anvendes:
CREATE TABLE library (
id INT PRIMARY KEY,
title VARCHAR(50) NOT NULL,
author VARCHAR(50),
pages INT
);
ALTER TABLE library ADD price DECIMAL DEFAULT 300;
ALTER TABLE library DROP COLUMN price;
Som du kan se, er dette scriptet til at oprette en tabel fra forrige kapitel.
Dernæst er der to ALTER-operationer. Den første operation tilføjer en price-kolonne til tabellen og angiver standardværdien til 300 for denne kolonne. Den anden operation fjerner denne kolonne:
ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;
Bemærk
Ved brug af
ALTER-sætningen kan du udføre forskellige skemaniveau-operationer på en tabel, såsom at tilføje eller fjerne begrænsninger, omdøbe, ændre datatyper samt tilføje eller fjerne indekser.
Lad os gå videre til en anden operation, nemlig indsættelsesoperationen.
For at bruge INSERT skal det angives, hvilke kolonner der skal tilføjes værdier til.
Her er syntaksen for denne erklæring:
INSERT INTO library (id, title, author, pages) VALUES
(1, 'CAMINO GHOSTS', 'John Grisham', '213'),
(2, 'FUNNY STORY', 'Emily Henry', '341');
Dette uddrag er fra det foregående kapitel og viser, hvordan data indsættes i tabellen library.
Her er en oversigt:
- Start med
INSERT INTOefterfulgt af tabelnavnet; - Angiv kolonnenavne i parentes;
- Brug
VALUEStil at angive data i samme rækkefølge som kolonnerne; - Sørg for, at datatyperne matcher kolonnerne;
- Afslut parenteserne og adskil rækker med kommaer.
Den generelle syntaks er:
INSERT INTO table_name (column1_name, column2_name) VALUES
(column1_value, column2_value),
(column1_value, column2_value),
...;
Glem ikke semikolonet til sidst!
Swipe to start coding
Der er en tom tabel kaldet employees med følgende kolonner:
employee_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2)
Det er den samme tabel som i de foregående afsnit, men nu indeholder denne tabel ingen data (rækker) overhovedet.
Din opgave er at:
- Tilføje en kolonne
countrytil denne tabel, som skal indeholde oplysninger om landet, hvor medarbejderen bor. - Indsætte 2 rækker data i tabellen, som skal se således ud:
id=1, first_name=Emily, last_name=Torres, department=Operations, salary=80000, country=United Kingdom.id=2, first_name=David, last_name=Bobr, department=Engineering, salary=95000, country=Poland.
For at løse denne opgave skal du bruge ALTER TABLE til den første delopgave og INSERT til den anden delopgave.
Bemærk
På højre side af kodeeditoren vil noget kode allerede være skrevet. Du må ikke slette eller ændre denne kode, da den er nødvendig for at tjekke korrektheden af din løsning.
Korte instruktioner
- Brug en ALTER TABLE-sætning til at tilføje en
country-kolonne af typenVARCHAR(50)tilemployees-tabellen. - Brug INSERT INTO til at tilføje to medarbejdere til
employees-tabellen. - Angiv i parentes kolonnerne i den korrekte rækkefølge, hvor du indsætter dataene.
- Indsæt to medarbejdere med de data, der er angivet i kravene.
Løsning
Tak for dine kommentarer!
single