Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Create og Begrænsninger | DDL og DML i SQL
Practice
Projects
Quizzes & Challenges
Quizzes
Challenges
/
Mellemliggende SQL

bookCreate og Begrænsninger

Tidligere arbejdede vi for forskellige virksomheder og udførte SELECT-forespørgsler efter deres behov. Nu skal vi lære hvordan man opretter og ændrer tabeller.

Tabeller oprettes ved hjælp af CREATE-sætningen, som har en lignende struktur som SELECT-sætningen, bortset fra at i stedet for at vælge data, opretter den data:

1234
CREATE TABLE example ( id INT PRIMARY KEY, some_info VARCHAR(50) );
copy
Note
Bemærk

Når du kører disse eksempler, vil du ikke få nogen output, fordi disse eksempler kun opretter en ny tabel. Hvis du kører koden igen, vil du få en fejl, der siger, at tabellen allerede eksisterer. Disse kodeeksempler er eksempler, og senere i opgaven vil data blive indsat i de nyoprettede tabeller og vist på skærmen, så du kan se, at alt fungerer.

Lad os gennemgå SQL-forespørgslen ovenfor.

Denne forespørgsel opretter en tom tabel med to kolonner: id og some_info.

Bemærk de datatyper, der bruges for hver kolonne:

  • INT er til heltalsdata;
  • VARCHAR(50) er til tekst, med op til 50 tegn.

Vi gennemgår ikke alle datatyper nu, da der findes mange. Vi fokuserer på de vigtigste i dette afsnit og udforsker andre senere i forløbet.

For eksempel kan vi oprette en anden tabel med forskellige datatyper:

1234567
CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50), birthdate DATE, salary DECIMAL(10, 2), is_active BOOLEAN );
copy

Med denne forespørgsel oprettes en tom tabel, der skal indeholde information om brugere, herunder:

  1. Et ID med en heltal datatype;
  2. Information om name, med en VARCHAR(50) datatype;
  3. Information om fødselsdato, med en DATE datatype;
  4. Information om løn, med en decimaltal datatype;
  5. Om brugeren er aktiv, med en datatype der kun accepterer true eller false værdier.

Begrænsninger

I SQL er begrænsninger regler, der anvendes på kolonner for at sikre dataintegritet. For eksempel, når vi bruger PRIMARY KEY ved siden af ID, betyder det, at denne kolonne skal have unikke værdier og ikke må være tom. Hver tabel kan kun have én PRIMARY KEY.

Her er nogle almindelige begrænsninger:

  • NOT NULL: Dette sikrer, at kolonnen ikke kan have tomme værdier.
  • UNIQUE: Dette sikrer, at alle værdier i kolonnen er forskellige.
  • DEFAULT: Dette angiver en standardværdi for kolonnen, hvis der ikke angives en værdi.

Dette er blot nogle få eksempler. Lad os se, hvordan vi kan ændre en tabel for at inkludere disse begrænsninger:

1234567
CREATE TABLE users_2 ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, birthdate DATE, salary DECIMAL(10, 2) DEFAULT 50000, is_active BOOLEAN );
copy

Nu skal kolonnen name altid have en værdi, da den ikke må være tom eller null. Hvis der heller ikke angives en løn, vil den automatisk blive sat til 50000.

Ved at bruge sådanne begrænsninger sikrer du, at dataene i din tabel er korrekte og følger de regler, du har angivet.

Opgave

Swipe to start coding

Din opgave er at oprette en tabel med navnet library.

Denne tabel skal have 4 kolonner:

  • id - integer primary key;
  • title - varchar, not null;
  • author - varchar;
  • pages - int.

Sørg for at afslutte forespørgslen med et semikolon (;).

Brug venligst præcis de kolonnenavne, der er angivet.

Til højre vil du se en stor mængde kode; denne må ikke ændres. Koden er skrevet for at sikre, at din løsning kontrolleres korrekt. Vi gennemgår alt, hvad der står der, senere i dette afsnit.

Korte instruktioner

  • Brug en CREATE-forespørgsel til at oprette en ny tabel med navnet library.
  • Tabellen skal have fire kolonner: id, title, author og pages.
  • For den første kolonne angives INT PRIMARY KEY.
  • For den anden kolonne angives VARCHAR(50) NOT NULL.
  • For den tredje kolonne angives VARCHAR(50).
  • For den fjerde kolonne angives INT.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 4. Kapitel 1
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

Suggested prompts:

Can you explain more about other SQL constraints?

How do I modify an existing table to add or change columns?

What are the main differences between data types like VARCHAR, INT, and DECIMAL?

close

bookCreate og Begrænsninger

Stryg for at vise menuen

Tidligere arbejdede vi for forskellige virksomheder og udførte SELECT-forespørgsler efter deres behov. Nu skal vi lære hvordan man opretter og ændrer tabeller.

Tabeller oprettes ved hjælp af CREATE-sætningen, som har en lignende struktur som SELECT-sætningen, bortset fra at i stedet for at vælge data, opretter den data:

1234
CREATE TABLE example ( id INT PRIMARY KEY, some_info VARCHAR(50) );
copy
Note
Bemærk

Når du kører disse eksempler, vil du ikke få nogen output, fordi disse eksempler kun opretter en ny tabel. Hvis du kører koden igen, vil du få en fejl, der siger, at tabellen allerede eksisterer. Disse kodeeksempler er eksempler, og senere i opgaven vil data blive indsat i de nyoprettede tabeller og vist på skærmen, så du kan se, at alt fungerer.

Lad os gennemgå SQL-forespørgslen ovenfor.

Denne forespørgsel opretter en tom tabel med to kolonner: id og some_info.

Bemærk de datatyper, der bruges for hver kolonne:

  • INT er til heltalsdata;
  • VARCHAR(50) er til tekst, med op til 50 tegn.

Vi gennemgår ikke alle datatyper nu, da der findes mange. Vi fokuserer på de vigtigste i dette afsnit og udforsker andre senere i forløbet.

For eksempel kan vi oprette en anden tabel med forskellige datatyper:

1234567
CREATE TABLE users ( id INT PRIMARY KEY, name VARCHAR(50), birthdate DATE, salary DECIMAL(10, 2), is_active BOOLEAN );
copy

Med denne forespørgsel oprettes en tom tabel, der skal indeholde information om brugere, herunder:

  1. Et ID med en heltal datatype;
  2. Information om name, med en VARCHAR(50) datatype;
  3. Information om fødselsdato, med en DATE datatype;
  4. Information om løn, med en decimaltal datatype;
  5. Om brugeren er aktiv, med en datatype der kun accepterer true eller false værdier.

Begrænsninger

I SQL er begrænsninger regler, der anvendes på kolonner for at sikre dataintegritet. For eksempel, når vi bruger PRIMARY KEY ved siden af ID, betyder det, at denne kolonne skal have unikke værdier og ikke må være tom. Hver tabel kan kun have én PRIMARY KEY.

Her er nogle almindelige begrænsninger:

  • NOT NULL: Dette sikrer, at kolonnen ikke kan have tomme værdier.
  • UNIQUE: Dette sikrer, at alle værdier i kolonnen er forskellige.
  • DEFAULT: Dette angiver en standardværdi for kolonnen, hvis der ikke angives en værdi.

Dette er blot nogle få eksempler. Lad os se, hvordan vi kan ændre en tabel for at inkludere disse begrænsninger:

1234567
CREATE TABLE users_2 ( id INT PRIMARY KEY, name VARCHAR(50) NOT NULL, birthdate DATE, salary DECIMAL(10, 2) DEFAULT 50000, is_active BOOLEAN );
copy

Nu skal kolonnen name altid have en værdi, da den ikke må være tom eller null. Hvis der heller ikke angives en løn, vil den automatisk blive sat til 50000.

Ved at bruge sådanne begrænsninger sikrer du, at dataene i din tabel er korrekte og følger de regler, du har angivet.

Opgave

Swipe to start coding

Din opgave er at oprette en tabel med navnet library.

Denne tabel skal have 4 kolonner:

  • id - integer primary key;
  • title - varchar, not null;
  • author - varchar;
  • pages - int.

Sørg for at afslutte forespørgslen med et semikolon (;).

Brug venligst præcis de kolonnenavne, der er angivet.

Til højre vil du se en stor mængde kode; denne må ikke ændres. Koden er skrevet for at sikre, at din løsning kontrolleres korrekt. Vi gennemgår alt, hvad der står der, senere i dette afsnit.

Korte instruktioner

  • Brug en CREATE-forespørgsel til at oprette en ny tabel med navnet library.
  • Tabellen skal have fire kolonner: id, title, author og pages.
  • For den første kolonne angives INT PRIMARY KEY.
  • For den anden kolonne angives VARCHAR(50) NOT NULL.
  • For den tredje kolonne angives VARCHAR(50).
  • For den fjerde kolonne angives INT.

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!

Sektion 4. Kapitel 1
single

single

some-alt