Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära ALTER- och INSERT-operationer | DDL och DML i SQL
Intermediär SQL

bookALTER- och INSERT-operationer

Föreställ dig en situation där vi behöver lägga till en kolumn i en befintlig tabell. Det vore inte lämpligt att ta bort tabellen (särskilt om den redan innehåller data) och sedan skapa en ny tabell och fylla den med data igen.

Därför kommer vi i detta kapitel att titta på ALTER-operationen.

Låt oss se hur denna operation används:

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 är detta skriptet för att skapa en tabell från föregående kapitel.

Därefter finns två ALTER-operationer. Den första operationen lägger till en price-kolumn i tabellen och sätter standardvärdet till 300 för denna kolumn. Den andra operationen tar bort denna kolumn:

ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;

Observera

Med hjälp av ALTER-satsen kan du utföra olika schema-nivåoperationer på en tabell, såsom att lägga till eller ta bort begränsningar, byta namn, ändra datatyper samt lägga till eller ta bort index.

Vi går vidare till en annan operation, nämligen insertionsoperationen.

För att använda INSERT måste vi ange i vilka kolumner vi vill lägga till värden.

Här är syntaxen för detta kommando:

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

Denna kodsnutt är från föregående kapitel och visar hur man infogar data i tabellen library.

Här är en genomgång:

  1. Börja med INSERT INTO, följt av tabellnamnet;
  2. Ange kolumnnamnen inom parentes;
  3. Använd VALUES för att lista data i samma ordning som kolumnerna;
  4. Säkerställ att datatyperna matchar kolumnerna;
  5. Avsluta parentesen och separera rader med kommatecken.

Den generella syntaxen är:

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

Glöm inte semikolonet i slutet!

Uppgift

Swipe to start coding

Det finns en tom tabell som heter employees med följande kolumner:

employee_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2)

Det är samma tabell som i tidigare avsnitt, men nu innehåller denna tabell ingen data (inga rader) alls.

Din uppgift är att:

  1. Lägga till en kolumn country i denna tabell, som ska innehålla information om landet där medarbetaren bor.
  2. Införa 2 rader med data i tabellen, som ska se ut så här:
    • 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.

För att utföra denna uppgift, använd ALTER TABLE för den första deluppgiften och INSERT för den andra deluppgiften.

Observera

På högra sidan av kodeditorn kommer viss kod redan att vara skriven. Vänligen ta inte bort eller ändra denna kod, eftersom den behövs för att kontrollera att din lösning är korrekt.

Kortfattade instruktioner

  • Använd ett ALTER TABLE-kommando för att lägga till kolumnen country av typen VARCHAR(50) i tabellen employees.
  • Använd INSERT INTO för att lägga till två medarbetare i tabellen employees.
  • Ange kolumnerna inom parentes i rätt ordning där du ska införa data.
  • Inför två medarbetare med de data som anges i uppgiften.

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 4. Kapitel 2
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

close

Awesome!

Completion rate improved to 4

bookALTER- och INSERT-operationer

Svep för att visa menyn

Föreställ dig en situation där vi behöver lägga till en kolumn i en befintlig tabell. Det vore inte lämpligt att ta bort tabellen (särskilt om den redan innehåller data) och sedan skapa en ny tabell och fylla den med data igen.

Därför kommer vi i detta kapitel att titta på ALTER-operationen.

Låt oss se hur denna operation används:

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 är detta skriptet för att skapa en tabell från föregående kapitel.

Därefter finns två ALTER-operationer. Den första operationen lägger till en price-kolumn i tabellen och sätter standardvärdet till 300 för denna kolumn. Den andra operationen tar bort denna kolumn:

ALTER TABLE table_name ADD/DROP column_name DATA_TYPE;

Observera

Med hjälp av ALTER-satsen kan du utföra olika schema-nivåoperationer på en tabell, såsom att lägga till eller ta bort begränsningar, byta namn, ändra datatyper samt lägga till eller ta bort index.

Vi går vidare till en annan operation, nämligen insertionsoperationen.

För att använda INSERT måste vi ange i vilka kolumner vi vill lägga till värden.

Här är syntaxen för detta kommando:

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

Denna kodsnutt är från föregående kapitel och visar hur man infogar data i tabellen library.

Här är en genomgång:

  1. Börja med INSERT INTO, följt av tabellnamnet;
  2. Ange kolumnnamnen inom parentes;
  3. Använd VALUES för att lista data i samma ordning som kolumnerna;
  4. Säkerställ att datatyperna matchar kolumnerna;
  5. Avsluta parentesen och separera rader med kommatecken.

Den generella syntaxen är:

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

Glöm inte semikolonet i slutet!

Uppgift

Swipe to start coding

Det finns en tom tabell som heter employees med följande kolumner:

employee_id INT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2)

Det är samma tabell som i tidigare avsnitt, men nu innehåller denna tabell ingen data (inga rader) alls.

Din uppgift är att:

  1. Lägga till en kolumn country i denna tabell, som ska innehålla information om landet där medarbetaren bor.
  2. Införa 2 rader med data i tabellen, som ska se ut så här:
    • 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.

För att utföra denna uppgift, använd ALTER TABLE för den första deluppgiften och INSERT för den andra deluppgiften.

Observera

På högra sidan av kodeditorn kommer viss kod redan att vara skriven. Vänligen ta inte bort eller ändra denna kod, eftersom den behövs för att kontrollera att din lösning är korrekt.

Kortfattade instruktioner

  • Använd ett ALTER TABLE-kommando för att lägga till kolumnen country av typen VARCHAR(50) i tabellen employees.
  • Använd INSERT INTO för att lägga till två medarbetare i tabellen employees.
  • Ange kolumnerna inom parentes i rätt ordning där du ska införa data.
  • Inför två medarbetare med de data som anges i uppgiften.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

close

Awesome!

Completion rate improved to 4
Avsnitt 4. Kapitel 2
single

single

some-alt