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

bookALTER- og INSERT-operasjoner

La oss forestille oss en situasjon der vi må legge til en kolonne i en eksisterende tabell. Det ville ikke vært riktig å slette tabellen (spesielt hvis den allerede inneholder data) og deretter opprette en ny tabell og fylle den med data på nytt.

Derfor skal vi i dette kapittelet se på ALTER-operasjonen.

La oss se hvordan denne operasjonen brukes:

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 skriptet for å opprette en tabell fra forrige kapittel.

Deretter følger to ALTER-operasjoner. Den første operasjonen legger til en price-kolonne i tabellen, og setter standardverdien til 300 for denne kolonnen. Den andre operasjonen fjerner denne kolonnen:

ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;

Merk

Ved å bruke ALTER-setningen kan du utføre ulike skjemanivå-operasjoner på en tabell, som å legge til eller fjerne begrensninger, endre navn, endre datatyper og legge til eller fjerne indekser.

La oss gå videre til en annen operasjon, nemlig innsettingsoperasjonen.

For å bruke INSERT, må vi angi hvilke kolonner vi ønsker å legge til verdier i.

Her er hvordan syntaksen for denne setningen ser ut:

INSERT INTO library (id, title, author, pages) VALUES 
  (1, 'CAMINO GHOSTS', 'John Grisham', '213'),
  (2, 'FUNNY STORY', 'Emily Henry', '341');

Dette utdraget er fra forrige kapittel og viser hvordan man setter inn data i tabellen library.

Her er en oversikt:

  1. Start med INSERT INTO, etterfulgt av tabellnavnet;
  2. Angi kolonnenavnene i parentes;
  3. Bruk VALUES for å liste opp dataene i samme rekkefølge som kolonnene;
  4. Sørg for at datatypene samsvarer med kolonnene;
  5. Lukk parentesene og skill rader med komma.

Den generelle syntaksen er:

INSERT INTO table_name (column1_name, column2_name) VALUES
  (column1_value, column2_value),
  (column1_value, column2_value),
  ...;

Ikke glem semikolonet på slutten!

Oppgave

Swipe to start coding

Det finnes en tom tabell kalt 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)

Dette er samme tabell som i de forrige seksjonene, men nå inneholder denne tabellen ingen data (rader) i det hele tatt.

Din oppgave er å:

  1. Legge til en kolonne country i denne tabellen, som skal inneholde informasjon om landet der den ansatte bor.
  2. Sette inn 2 rader med data i tabellen, som skal se slik ut:
    • 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 å utføre denne oppgaven, bruk ALTER TABLE for den første deloppgaven og INSERT for den andre deloppgaven.

Merk

På høyre side av kodeeditoren vil noe kode allerede være skrevet. Ikke slett eller endre denne koden, da den er nødvendig for å sjekke om løsningen din er korrekt.

Korte instruksjoner

  • Bruk en ALTER TABLE-setning for å legge til kolonnen country av typen VARCHAR(50) i employees-tabellen.
  • Bruk INSERT INTO for å legge til to ansatte i employees-tabellen.
  • Skriv kolonnenavnene i parentes i riktig rekkefølge der du skal sette inn dataene.
  • Sett inn to ansatte med dataene som er oppgitt i kravene.

Løsning

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 2
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

close

Awesome!

Completion rate improved to 4

bookALTER- og INSERT-operasjoner

Sveip for å vise menyen

La oss forestille oss en situasjon der vi må legge til en kolonne i en eksisterende tabell. Det ville ikke vært riktig å slette tabellen (spesielt hvis den allerede inneholder data) og deretter opprette en ny tabell og fylle den med data på nytt.

Derfor skal vi i dette kapittelet se på ALTER-operasjonen.

La oss se hvordan denne operasjonen brukes:

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 skriptet for å opprette en tabell fra forrige kapittel.

Deretter følger to ALTER-operasjoner. Den første operasjonen legger til en price-kolonne i tabellen, og setter standardverdien til 300 for denne kolonnen. Den andre operasjonen fjerner denne kolonnen:

ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;

Merk

Ved å bruke ALTER-setningen kan du utføre ulike skjemanivå-operasjoner på en tabell, som å legge til eller fjerne begrensninger, endre navn, endre datatyper og legge til eller fjerne indekser.

La oss gå videre til en annen operasjon, nemlig innsettingsoperasjonen.

For å bruke INSERT, må vi angi hvilke kolonner vi ønsker å legge til verdier i.

Her er hvordan syntaksen for denne setningen ser ut:

INSERT INTO library (id, title, author, pages) VALUES 
  (1, 'CAMINO GHOSTS', 'John Grisham', '213'),
  (2, 'FUNNY STORY', 'Emily Henry', '341');

Dette utdraget er fra forrige kapittel og viser hvordan man setter inn data i tabellen library.

Her er en oversikt:

  1. Start med INSERT INTO, etterfulgt av tabellnavnet;
  2. Angi kolonnenavnene i parentes;
  3. Bruk VALUES for å liste opp dataene i samme rekkefølge som kolonnene;
  4. Sørg for at datatypene samsvarer med kolonnene;
  5. Lukk parentesene og skill rader med komma.

Den generelle syntaksen er:

INSERT INTO table_name (column1_name, column2_name) VALUES
  (column1_value, column2_value),
  (column1_value, column2_value),
  ...;

Ikke glem semikolonet på slutten!

Oppgave

Swipe to start coding

Det finnes en tom tabell kalt 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)

Dette er samme tabell som i de forrige seksjonene, men nå inneholder denne tabellen ingen data (rader) i det hele tatt.

Din oppgave er å:

  1. Legge til en kolonne country i denne tabellen, som skal inneholde informasjon om landet der den ansatte bor.
  2. Sette inn 2 rader med data i tabellen, som skal se slik ut:
    • 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 å utføre denne oppgaven, bruk ALTER TABLE for den første deloppgaven og INSERT for den andre deloppgaven.

Merk

På høyre side av kodeeditoren vil noe kode allerede være skrevet. Ikke slett eller endre denne koden, da den er nødvendig for å sjekke om løsningen din er korrekt.

Korte instruksjoner

  • Bruk en ALTER TABLE-setning for å legge til kolonnen country av typen VARCHAR(50) i employees-tabellen.
  • Bruk INSERT INTO for å legge til to ansatte i employees-tabellen.
  • Skriv kolonnenavnene i parentes i riktig rekkefølge der du skal sette inn dataene.
  • Sett inn to ansatte med dataene som er oppgitt i kravene.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

close

Awesome!

Completion rate improved to 4
Seksjon 4. Kapittel 2
single

single

some-alt