SQL Server CREATE, ALTER, DROP Table [T-SQL-eksempler]
โก Smart oppsummering
SQL Server-tabeller lagrer data i rader og kolonner. Transact-SQL bruker CREATE TABLE for รฅ bygge en tabell, ALTER TABLE for รฅ legge til eller endre kolonner, og DROP TABLE for รฅ fjerne tabellen, dataene og strukturen.

Hva er en tabell?
En tabell er et objekt i SQL Server som lagrer data i et rad-og-kolonne-format. Diagrammet nedenfor viser henholdsvis rader og kolonner.
Hvordan lage en tabell i SQL Server med T-SQL
Det fรธrste trinnet for รฅ lagre data er รฅ opprette en tabell i database hvor dataene skal ligge. Etter at du har opprettet tabellen, kan du fortsette รฅ sette inn rader i den.
Du kan opprette en tabell pรฅ fรธlgende mรฅter:
- T-SQL: opprett en ny tabell ved รฅ definere alle kolonnene og deres datatype.
- T-SQL: opprett en ny tabell ved hjelp av en eksisterende tabell.
- Bruk av tabelldesigner.
La oss studere dette i detalj.
T-SQL: Opprett en ny tabell ved รฅ definere alle kolonnene og datatypen deres
Nedenfor finner du syntaksen for รฅ opprette en tabell i SQL Server.
Syntaks:
CREATE TABLE tableName ( column_1 datatype [ NULL | NOT NULL ], column_2 datatype [ NULL | NOT NULL ], ... );
Her
- Parameteren tableName angir navnet pรฅ tabellen du skal lage.
- Parametrene column_1, column_2โฆ angir kolonnene som skal legges til i tabellen.
- En kolonne bรธr spesifiseres som enten NULL eller NOT NULL. Hvis du ikke spesifiserer, bruker SQL Server NULL som standard.
La oss lage en grunnleggende tabell med to kolonner.
Spรธrsmรฅl:
CREATE TABLE COURSE ( Course_ID Int, Course_Name Varchar(10) )
Forutsetning: Velg databasen der du vil opprette tabellen.
Trinn 1) Kjรธr spรธrringen ved รฅ klikke pรฅ Utfรธr. Fรธr spรธrringen kjรธres, finnes det ingen tabell, som vist nedenfor.
Etter at du har kjรธrt spรธrringen, klikker du pรฅ Oppdater-knappen. Den nye tabellen finnes nรฅ som Kurs, som vist nedenfor.
Trinn 2) Sett inn noen data. Skjermbildene nedenfor viser den nyopprettede kurstabellen som er klar til รฅ motta rader.
Frem til nรฅ finnes bare tabellen, men det er ingen data i den ennรฅ.
Transact-SQL bruker INSERT-setningen for รฅ sette inn data i en tabell. Med denne setningen kan du sette inn รฉn eller flere rader i en tabell.
Syntaks:
INSERT INTO tableName (column_1, column_2, ... ) VALUES (expression_1, expression_2, ... ), (expression_1, expression_2, ... ), ...;
Syntaksen ovenfor viser den grunnleggende formen for kommandoen nรฅr du bruker VALUES-nรธkkelordet til รฅ sette inn data i en tabell.
La oss sette inn fire rader ved hjelp av INSERT-kommandoen.
Insert into COURSE values (1,'SQL'); Insert into COURSE values (2,'Python'); Insert into COURSE values (3,'SQL'); Insert into COURSE values (4,'C');
รyeblikksbildet nedenfor viser at innsettingen av fire rader er vellykket.
Trinn 3) Bruk SELECT-setningen til รฅ vise dataene. For รฅ vise data i SQL Server, bruk fรธlgende syntaks:
SELECT expression FROM tableName [WHERE condition];
Eksempel pรฅ spรธrring:
SELECT * FROM COURSE;
Tabellen ble opprettet og inneholder nรฅ fire poster. Merk at du kan opprette poster med en duplikatverdi i hvilken som helst av kolonnene, fordi det ikke finnes noen begrensninger.
T-SQL: Opprett en ny tabell ved hjelp av en eksisterende tabell
Anta at du vil ha en annen tabell som KURS-tabellen som ble opprettet ovenfor, men du trenger bare Kursnavn-kolonnen og ikke Kurs-ID.
Syntaks:
SELECT (Column 1, โฆ) INTO <New Table name> FROM <Old Table name>;
Eksempel pรฅ spรธrring:
SELECT COURSE_NAME INTO COURSE_NAMES FROM COURSE;
Trinn 1) Kjรธr spรธrringen ved รฅ klikke pรฅ Utfรธr. En ny tabell med navnet COURSE_NAMES opprettes med รฉn kolonne og fire poster kopiert fra den eldre tabellen, som vist nedenfor.
Eksempel pรฅ spรธrring:
SELECT * FROM COURSE_NAMES;
Resultatet nedenfor viser de fire Course_Name-postene i den nye COURSE_NAMES-tabellen.
Bruke Table Designer
Du kan ogsรฅ opprette en tabell fra SQL Server Management Studio IDE ved bruk av tabelldesigner.
Trinn 1) Hรธyreklikk pรฅ Tabell > Ny > Tabell, som vist nedenfor.
Trinn 2) Skriv inn kolonnenavnene og datatyper, og velg om hver kolonne tillater nullverdier.
Trinn 3) Trykk CTRL+S for รฅ lagre tabellen, og skriv inn navnet som Kurstittel.
Etter at du har klikket pรฅ Oppdater, vises den nye tabellen med navnet Kurstittel og รฉn kolonne kalt Kursnavn, som vist nedenfor.
Endre tabell i SQL Server
Det finnes to mรฅter รฅ endre en tabell i SQL Server pรฅ:
- T-SQL: endre tabellen ved รฅ legge til nye kolonner.
- Bruk av tabelldesigner.
T-SQL: Endre tabell ved รฅ sette inn kolonner
Nedenfor er syntaksen til ALTER-kommandoen i SQL:
Syntaks:
Alter TABLE <Table name> ADD Column1 datatype, Column2 datatype;
Spรธrsmรฅl:
ALTER TABLE dbo.Course_Title ADD Course_Duration VARCHAR(20);
Trinn 1) Kjรธr spรธrringen ved รฅ klikke pรฅ Utfรธr. En ny kolonne med navnet Kurs_Varighet finnes nรฅ i Kurs_Tittel-tabellen, som vist nedenfor.
Bruke Table Designer
Du kan ogsรฅ endre en tabell fra brukergrensesnittet ved hjelp av tabelldesigneren.
Trinn 1) Hรธyreklikk pรฅ den eksisterende tabellen > Utforming, som vist nedenfor.
Trinn 2) Legg til kolonnenavnet som Course_Start_Date og velg datatypen.
Trinn 3) Trykk CTRL+S for รฅ lagre den nylig tillagte kolonnen. En ny kolonne med navnet Course_Start_Date opprettes i Course_Title-tabellen, som vist nedenfor.
Slett tabell i SQL Server
Du sletter en tabell nรฅr den ikke lenger er nรธdvendig.
Det finnes to mรฅter รฅ slette en tabell i SQL Server pรฅ:
- Bruk av SQL Server Management Studio.
- T-SQL: slett tabellen med DROP TABLE.
Bruker SQL Server Management Studio
Trinn 1) Hรธyreklikk pรฅ den eksisterende tabellen > Slett, for tabellen med navnet Kurstittel, som vist nedenfor.
Trinn 2) Klikk OK i vinduet Slett objekt.
Tabellen Course_Title er nรฅ slettet fra tabelllisten, som vist nedenfor.
T-SQL: Slett tabell
Nedenfor er syntaksen for รฅ slette en tabell.
Syntaks:
DROP TABLE <tableName>;
Parameteren tableName er navnet pรฅ tabellen som skal slettes.
Spรธrsmรฅl:
DROP TABLE COURSE_NAMES;
Trinn 1) Kjรธr spรธrringen ved รฅ klikke pรฅ Utfรธr. Tabellen COURSE_NAMES slettes fra tabelllisten, som vist nedenfor.
Alternativt viser kildekoden en DELETE TABLE-kommando som bare fjerner rader (data) samtidig som tabellstrukturen forblir intakt, slik at tabellen kan brukes pรฅ nytt senere.
Syntaks:
DELETE TABLE <Table name>;
OBS: I standard T-SQL fjernes rader med DELETE FROM <table>, og et bord tรธmmes raskt med TRUNCATE TABLE <table>; hele tabellen fjernes med DROP TABLE, vist ovenfor.
Interessante fakta!
- Store filer som XML eller bilder kan lagres i en kolonne ved hjelp av datatyper for store objekter som VARBINARY(MAX), VARCHAR(MAX) eller XML-typen (SQL Server bruker ikke Oracle-stil BLOB- og CLOB-navn).
- DELETE fjerner bare rader og kan rulles tilbake i en transaksjon, mens DROP fjerner hele tabellstrukturen; i SQL Server kan til og med DROP rulles tilbake nรฅr den kjรธrer i en eksplisitt transaksjon.
























