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.
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:
- T-SQL: Opret en ny tabel ved at definere alle kolonner og dens datatype.
- T-SQL: Opret ny tabel ved hjælp af en eksisterende tabel
- 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.
Trin 1) Kør forespørgslen ved at klikke på Udfør.
Før du kører forespørgslen, eksisterer der ingen tabel:
Resultat: Når du har kørt forespørgslen, skal du klikke på knappen 'Opdater' den nye tabel eksisterer som et kursus.
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.
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.
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.
Resultat: Ny tabel oprettet med navnet som COURSE_NAMES med eksisterende 1 kolonne og fire poster fra ældre tabel.
SELECT * FROM COURSE_NAMES;
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.
Trin 2) Indtast kolonnenavne, datatyper. Vælg, om du vil tillade nuller eller ej.
Trin 3) Tryk på 'CTRL+S' for at gemme tabellen. Indtast Navn som 'Kursus navn'
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.
Æ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.
Resultat: Der findes en ny kolonne med navnet som Kursus_Varighed i Kursustiteltabel.
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.
Trin 2) Tilføj kolonnenavn som Course_Start_Date og vælg Datatype.
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.
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'
Trin 2) Klik på i vinduet 'Slet objekt' OK.
Resultat: 'Course_Title' tabel blev slettet fra tabellisten.
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.
Resultat: 'Course_Name' tabel blev slettet fra tabellisten.
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.