SQL Server CREATE, ALTER, DROP Tabel [T-SQL-eksempler]

Hvad er en tabel?

En tabel er et objekt, som gemmer data i Rรฆkke og kolonne format. Nedenstรฅende diagram viser henholdsvis rรฆkker og kolonner.

Tabel rรฆkker og kolonne
Tabel rรฆkker og kolonne

Sรฅdan opretter du en tabel i SQL Server med T-SQL

Det fรธrste skridt til at gemme data i databasen er at oprette en tabel, hvor data vil ligge. Efter oprettelse af tabellen, kan vi blive ved med at indsรฆtte rรฆkkerne i tabellen.

Vi kan oprette en tabel pรฅ fรธlgende mรฅder:

  1. T-SQL: Opret en ny tabel ved at definere alle kolonner og dens datatype.
  2. T-SQL: Opret ny tabel ved hjรฆlp af en eksisterende tabel
  3. Brug af Table Designer

Lad os studere dette i detaljer:

T-SQL: Opret en ny tabel ved at definere alle kolonner og dens datatype.

Nedenfor er syntaksen til at oprette tabel i SQL Server

Syntaks

CREATE TABLE tableName
( 
  column_1 datatype [ NULL | NOT NULL ],
  column_2 datatype [ NULL | NOT NULL ],
  ...
);

Her,

  • Parameteren tableName angiver navnet pรฅ den tabel, du vil oprette.
  • Parametrene column_1, column_2โ€ฆ angiver de kolonner, der skal tilfรธjes til tabellen.
  • En kolonne skal angives som enten NULL eller NOT NULL. Hvis du ikke angiver, vil SQL Server tage NULL som standard.

Lad os oprette en grundlรฆggende tabel med to kolonner

Forespรธrgsel:

CREATE TABLE COURSE
(
Course_ID Int,
Course_Name Varchar(10)
)

Forudsรฆtning: Vรฆlg den database, hvor du skal oprette tabellen.

Opret en tabel i SQL Server med T-SQL

Trin 1) Kรธr forespรธrgslen ved at klikke pรฅ Udfรธr.
Fรธr du kรธrer forespรธrgslen, eksisterer der ingen tabel:

Opret en tabel i SQL Server med T-SQL

Resultat: Nรฅr du har kรธrt forespรธrgslen, skal du klikke pรฅ knappen 'Opdater' den nye tabel eksisterer som et kursus.

Opret en tabel i SQL Server med T-SQL

Opret en tabel i SQL Server med T-SQL

Trin 2) Indsรฆt nogle data

Indtil nu eksisterer tabellen kun, men der er ingen data i den oprettede tabel endnu.

Transact-SQL har INSERT-sรฆtningen, der kan bruges til at indsรฆtte data i en tabel. Med denne sรฆtning kan vi indsรฆtte enten en eller flere kolonner i en tabel.

Syntaks

INSERT INTO tableName
(column_1, column_2, ... )
VALUES
(expression_1, expression_2, ... ),
(expression_1, expression_2, ... ),
...;

Ovenstรฅende viser den grundlรฆggende syntaks for kommandoen, nรฅr du bruger nรธgleordet VALUES til at indsรฆtte data i en tabel.

Lad os indsรฆtte fire rรฆkker vha indsatte kommando.

Insert into COURSE values (1,'SQL');
Insert into COURSE values (2,'Python');
Insert into COURSE values (3,'SQL');
Insert into COURSE values (4,'C');

Nedenstรฅende snapshot viser, at nu er indsรฆttelse af fire rรฆkker vellykket.

Opret en tabel i SQL Server med T-SQL

Trin 3) Brug SELECT-sรฆtningen til at se data
For at se data i SQL Server skal du kopiere fรธlgende syntaks:

SELECT expression
FROM tableName
[WHERE condition];

Eksempel forespรธrgsel:

SELECT * FROM COURSE;

Resultat: Tabel blev oprettet, og der er fire poster i tabeller. Bemรฆrk, at vi kan oprette poster med en dubletvรฆrdi i enhver af kolonnerne, da der ikke er nogen begrรฆnsninger.

Opret en tabel i SQL Server med T-SQL

T-SQL: Opret en ny tabel ved hjรฆlp af en eksisterende tabel.

Sig nu, at vi vil have en anden tabel som COURSE-tabellen oprettet ovenfor. Vi har dog kun brug for รฉn kolonne af Course_Name og ikke Course_ID.

Syntaks

SELECT (Column 1, โ€ฆ) INTO <New Table name> FROM <Old Table name>;

Eksempel forespรธrgsel:

SELECT COURSE_NAME INTO COURSE_NAMES FROM COURSE;

Trin 1) Kรธr forespรธrgslen ved at klikke pรฅ Udfรธr.

Opret en ny tabel ved hjรฆlp af en eksisterende tabel

Resultat: Ny tabel oprettet med navnet som COURSE_NAMES med eksisterende 1 kolonne og fire poster fra รฆldre tabel.

SELECT * FROM COURSE_NAMES;

Opret en ny tabel ved hjรฆlp af en eksisterende tabel

Brug af Table Designer

Vi kan ogsรฅ oprette tabel fra Studio Management IDE vha Borddesigner.

Trin 1) Hรธjreklik pรฅ Tabel>Ny>Klik pรฅ Bord.

Opret en tabel i SQL Server ved hjรฆlp af Table Designer

Trin 2) Indtast kolonnenavne, datatyper. Vรฆlg, om du vil tillade nuller eller ej.

Opret en tabel i SQL Server ved hjรฆlp af Table Designer

Trin 3) Tryk pรฅ 'CTRL+S' for at gemme tabellen. Indtast Navn som 'Kursus navn'

Opret en tabel i SQL Server ved hjรฆlp af Table Designer

Resultat: Klik pรฅ 'Opdater', og vi kan se, at der findes en ny tabel med navnet som Kursus navn med รฉn kolonne navngivet som Course_Name.

Opret en tabel i SQL Server ved hjรฆlp af Table Designer

Opret en tabel i SQL Server ved hjรฆlp af Table Designer

ร†ndre tabel i SQL Server

Der er to mรฅder til ร†ndre tabel in SQL-server.

1. T-SQL: ร†ndre tabel ved at tilfรธje nye kolonner.

2. Brug af tabeldesigner

T-SQL: ร†ndre tabel ved at indsรฆtte kolonner

Nedenfor er syntaksen for Alter-kommandoen i SQL:

Syntaks:

 Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;

Query:

ALTER TABLE dbo.Course_Title ADD Course_Duration VARCHAR(20);

Trin 1) Kรธr forespรธrgslen ved at klikke pรฅ Udfรธr.

ร†ndre tabel ved at indsรฆtte kolonner

Resultat: Der findes en ny kolonne med navnet som Kursus_Varighed i Kursustiteltabel.

ร†ndre tabel ved at indsรฆtte kolonner

Brug af tabeldesigner

Vi kan ogsรฅ รฆndre tabel fra UI ved hjรฆlp af Table Designer.

Trin 1) Hรธjreklik pรฅ den eksisterende tabel>Design.

Skift tabel ved hjรฆlp af tabeldesigner

Trin 2) Tilfรธj kolonnenavn som Course_Start_Date og vรฆlg Datatype.

Skift tabel ved hjรฆlp af tabeldesigner

Trin 3) Tryk pรฅ 'CTRL+S' for at gemme den nyligt tilfรธjede kolonne.

Resultat: Ny kolonne oprettes med navnet som Course_Start_Date in Kursus navn tabel.

Skift tabel ved hjรฆlp af tabeldesigner

Slet tabel i SQL Server

Vi sletter tabellen, nรฅr den ikke lรฆngere er pรฅkrรฆvet.

Der er to mรฅder til Slet tabel i SQL server.

1. Ved brug af SQL Server Management Studio.

2. T-SQL: Slet tabel.

Brug af SQL Server Management Studio

Trin 1) Hรธjreklik pรฅ eksisterende tabel>Slet. Tabelnavn 'Course_Title'

Slet tabel ved hjรฆlp af SQL Server Management Studio

Trin 2) Klik pรฅ i vinduet 'Slet objekt' OK.

Slet tabel ved hjรฆlp af SQL Server Management Studio

Resultat: 'Course_Title' tabel blev slettet fra tabellisten.

Slet tabel ved hjรฆlp af SQL Server Management Studio

T-SQL: Slet tabel

Nedenfor er syntaksen til Drop bord

Syntaks

DROP TABLE <tableName>;

Parameteren tableName er navnet pรฅ den tabel, der skal slettes.

Forespรธrgsel:

DROP TABLE COURSE_NAMES;

Trin 1) Kรธr forespรธrgslen ved at klikke pรฅ Udfรธr.

Slet tabel

Resultat: 'Course_Name' tabel blev slettet fra tabellisten.

Slet tabel

Alternativt kan du ogsรฅ bruge kommandoen DELETE TABLE. Men det vil kun slette rรฆkker (data). Bordstrukturen forbliver intakt. Kommandoen er beregnet til at afkorte tabellen, sรฅ den kan bruges senere.

Syntaks

DELETE TABLE <Table name>;

Interessante fakta!

  • Vi kan ogsรฅ gemme store filer som .xml i en kolonne som BLOB, CLOB datatype.
  • Slet kan rulle tilbage, men Drop kan ikke rulle tilbage.

Resumรฉ

  • Slet tabel sletter kun alle rรฆkkerne, men tabelstrukturen eksisterer stadig. Vi kan igen indsรฆtte nye rรฆkker.
  • Droppet vil permanent slette tabelstrukturen, og vi kan derfor ikke indsรฆtte nye rรฆkker.

Opsummer dette indlรฆg med: