Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære ALTER- og INSERT-operationer | DDL og DML i SQL
Mellemliggende SQL

bookALTER- og INSERT-operationer

Lad os forestille os 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 bruges:

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 sætter 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 at bruge 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 og tilføje eller fjerne indekser.

Lad os gå videre til en anden operation, nemlig indsættelsesoperationen.

For at bruge INSERT skal vi angive, hvilke kolonner vi vil tilføje 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 forrige kapitel og viser, hvordan man indsætter data i tabellen library.

Her er en opdeling:

  1. Start med INSERT INTO efterfulgt af tabelnavnet;
  2. Angiv kolonnenavne i parentes;
  3. Brug VALUES til at angive dataene i samme rækkefølge som kolonnerne;
  4. Sørg for, at datatyperne matcher kolonnerne;
  5. Luk parentesen 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!

Opgave

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:

  1. Tilføje en kolonne country til denne tabel, som skal indeholde information om landet, hvor medarbejderen bor.
  2. Indsætte 2 rækker med 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 redigere 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 typen VARCHAR(50) til employees-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

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 2
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

close

Awesome!

Completion rate improved to 4

bookALTER- og INSERT-operationer

Stryg for at vise menuen

Lad os forestille os 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 bruges:

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 sætter 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 at bruge 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 og tilføje eller fjerne indekser.

Lad os gå videre til en anden operation, nemlig indsættelsesoperationen.

For at bruge INSERT skal vi angive, hvilke kolonner vi vil tilføje 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 forrige kapitel og viser, hvordan man indsætter data i tabellen library.

Her er en opdeling:

  1. Start med INSERT INTO efterfulgt af tabelnavnet;
  2. Angiv kolonnenavne i parentes;
  3. Brug VALUES til at angive dataene i samme rækkefølge som kolonnerne;
  4. Sørg for, at datatyperne matcher kolonnerne;
  5. Luk parentesen 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!

Opgave

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:

  1. Tilføje en kolonne country til denne tabel, som skal indeholde information om landet, hvor medarbejderen bor.
  2. Indsætte 2 rækker med 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 redigere 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 typen VARCHAR(50) til employees-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

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

close

Awesome!

Completion rate improved to 4
Sektion 4. Kapitel 2
single

single

some-alt