sql >> Database teknologi >  >> RDS >> Database

SQL-ændringstabel

Hvis du vil tilføje kolonner i en eksisterende tabel i Structured Query Language, skal du ændre tabellen eller slette kolonner fra tabellen. Alle disse handlinger er kun tilladt, mens du bruger ALTER TABLE-sætningen. ALTER TABLE-sætningen tillader også brugere at tilføje eller slette SQL-begrænsningerne på de eksisterende tabeller i SQL.

ALTER TABLE-sætningen tillader også brugeren at omdøbe den eksisterende tabel.

ALTER TABLE ADD COLUMN-sætning i SQL

Dette bruges, når du skal tilføje kolonner til den eksisterende tabel. I en sådan situation, i stedet for at oprette en ny tabel, kan du tilføje en kolonne i en eksisterende tabel ved hjælp af ADD nøgleord.

Syntaks for ALTER TABLE ADD COLUMN-sætningen i SQL

ALTER TABLE Table_Name ADD Column_Name Data_Type;   

Ovenstående syntaks bruges til at tilføje en kolonne i en eksisterende tabel og giver brugerne mulighed for kun at tilføje et enkelt felt i tabellen.

For at tilføje mere end én kolonne i en eksisterende tabel skal du bruge følgende syntaks:

ALTER TABLE Table_Name ADD (Column_Name1 Data_Type, Column_Name2 Data_Type);

Lad os forstå ALTER TABEL ADD COLUMN i SQL med eksempler.

Eksempel på ALTER TABLE ADD COLUMN i SQL

Vi har taget flere SQL-eksempler, som vil hjælpe dig med at forstå tilføjelse af en enkelt kolonne og flere kolonner i den eksisterende tabel ved hjælp af ALTER TABLE ADD COLUMN-sætning.

Overvej følgende tabeller sammen med de givne poster.

Tabel 1:Mobile_Plan:

Package_Id Data_Id Taletids_Id
1 2 1
2 3 2
3 1 3

Tabel 2:Data_Plan:

Data_Id Data_Limit Data_Price
1 2 30
2 5 70
3 4 55

Tabel 3:Taletidsplan:

Taletids_Id Taletid _grænse Taletid _Pris
1 100 150
2 70 105
3 60 90

Tabel 4:Kunde (tom tabel)

Eksempel 1:Skriv en forespørgsel for at tilføje en ny kolonne Extra_Data_Price i Data_Plan-tabellen.

ALTER TABLE Data_Plan ADD Extra_Data_Price int; 

Vi har brugt ALTER TABLE ADD-sætningen i ovenstående forespørgsel til at tilføje en ny Extra_Data_Price-kolonne i Data_Plan-tabellen. Vi har tilføjet en enkelt kolonne i den eksisterende tabel.

Vi vil nu bruge nøgleordet DESC og tabelnavnet til at krydstjekke, om kolonnen Extra_Data_Price blev tilføjet eller ej i Data_Plan-tabellen.

DESC Data_Plan;   
Felt Type Nul Nøgle Standard Ekstra
Data_Id int(11) NEJ PRI NULL
Data_Limit int(11) JA NULL
Data_Price int(11) JA NULL
Extra_Data_Price Int(11) JA

Eksempel 2: Skriv en forespørgsel for at tilføje flere kolonner CustomerId, Customer_Name og Phone_Number i kundetabellen, som er tom og har ingen kolonner.

ALTER TABLE Customer ADD (CustomerId int, Customer_Name varchar(20), Phone_Number varchar(10));

Vi har brugt ALTER TABLE ADD-sætningen i ovenstående forespørgsel til at tilføje flere nye kolonner CustomerId, Customer_Name og Phone_Number i Customer-tabellen. Vi har tilføjet flere kolonner i den eksisterende tabel.

Vi vil nu bruge nøgleordet DESC og tabelnavnet til at krydstjekke, om kolonnerne CustomerId, Customer_Name og Phone_Number blev tilføjet korrekt eller ej i kundetabellen.

DESC Customer;   
Felt Type Nul Nøgle Standard Ekstra
Kunde-id int(11) JA NULL
Customer_Name varchar(20) JA NULL
Telefonnummer varchar(10) JA NULL

Antag, at du vil tilføje begrænsninger som primærnøgle, fremmednøgle til en eksisterende tabel. Vi vil tage et eksempel på at tilføje primærnøglebegrænsninger og fremmednøglebegrænsninger til den eksisterende tabel. Vi kan også tilføje disse begrænsninger ved hjælp af ALTER TABLE ADD-sætning.

Eksempel 3: Skriv en forespørgsel for at tilføje primærnøglebegrænsning på kolonnenavnet CustomerId i kundetabellen.

ALTER TABLE Customer ADD Primary Key(CustomerId);

I ovenstående forespørgsel har vi brugt ALTER TABLE ADD-sætningen til at tilføje den primære nøgle-begrænsning på kolonnenavnet CustomerId i kundetabellen. Vi har brugt nøgleordet Primary Key med ALTER TABLE ADD-sætningen for at tilføje en begrænsning på kunde-id'et.

Vi vil nu bruge søgeordet DESC og tabelnavnet til at krydstjekke, om CustomerId kolonnenøglen er ændret til PRI i Customer tabellen.

DESC Customer;   
Felt Type Nul Nøgle Standard Ekstra
Kunde-id int(11) JA PRI NULL
Customer_Name varchar(20) JA NULL
Telefonnummer varchar(10) JA NULL

Eksempel 4: Skriv en forespørgsel for at tilføje Foreign Key constraint på kolonnenavnet Package_Id i kundetabellen.

ALTER TABLE Customer ADD (Package_Id int, FOREIGN KEY(Package_Id) references Mobile_Plan(Package_ID));

I ovenstående forespørgsel har vi først tilføjet kolonnen Package_Id i kundetabellen, og derefter har vi brugt Foreign Key på den samme kolonne Package_Id i samme forespørgsel ved hjælp af ALTER TABLE ADD-sætning.

Vi vil nu bruge søgeordet DESC og tabelnavnet til at krydstjekke, om kolonnen Package_Id blev tilføjet eller ikke lykkedes i kundetabellen og nøgleændring til MUL.

DESC Customer;   
Felt Type Nul Nøgle Standard Ekstra
Kunde-id int(11) JA PRI NULL
Customer_Name varchar(20) JA NULL
Telefonnummer varchar(10) JA NULL
Package_Id Int(11) JA MUL NULL

ALTER TABLE MODIFY COLUMN-sætning i SQL

Antag, at du vil opdatere kolonnenavnet eller definitionen som en datatype. I så fald vil vi bruge ALTER TABLE MODIFY-sætningen til at opdatere kolonnedatatypen for den allerede eksisterende tabel. Vi bruger søgeordet MODIFY lige efter Table_Name i sætningen.

Syntaks for ALTER TABLE MODIFY COLUMN-sætning i SQL

ALTER TABLE Table_Name MODIFY Column_Name Data_Type;   

Ovenstående syntaks bruges til at ændre kolonner i en eksisterende tabel, så brugeren kun kan ændre et enkelt felt.

For at ændre mere end én kolonne i en eksisterende tabel, brug nedenstående syntaks:

ALTER TABLE Table_Name MODIFY (Column_Name1 Data_Type, Column_Name2 Data_Type);

Lad os forstå ALTER TABEL MODIFY i SQL med eksempler.

Eksempel på kolonnen ALTER TABLE MODIFY i SQL

Vi har taget flere SQL-eksempler for at hjælpe dig med at forstå ændring af enkelte kolonner og flere kolonner i den eksisterende tabel ved hjælp af ALTER TABLE MODIFY-sætning.

Overvej følgende tabeller sammen med de givne poster.

Tabel 1:Mobile_Plan:

Package_Id Data_Id Taletids_Id
1 2 1
2 3 2
3 1 3

Tabel 2:Data_Plan:

Data_Id Data_Limit Data_Price
1 2 30
2 5 70
3 4 55

Tabel 3:Taletidsplan:

Taletids_Id Taletid _grænse Taletid _Pris
1 100 150
2 70 105
3 60 90

Tabel 4:Kunde

Kunde-id Customer_Name Telefonnummer Package_Id
101 Bhavesh 9846522021 1
102 Mahesh 7798598272 3
103 Anita 7865222021 1

Eksempel 1: Skriv en forespørgsel for at opdatere størrelsen på kolonnen Kundenavn fra kundetabellen.

ALTER TABLE Customer MODIFY Customer_Name varchar(30);

I ovenstående forespørgsel har vi ændret kolonnens Customer_Name-størrelse fra 20 til 30. Vi har brugt ALTER TABLE-sætningen med MODIFY nøgleordet lige efter tabelnavnet for at ændre kolonnen.

Vi vil nu bruge søgeordet DESC og tabelnavnet til at krydstjekke, om kolonnen Customer_Name-datatypen er ændret i Customer-tabellen.

DESC Customer;   
Felt Type Nul Nøgle Standard Ekstra
Kunde-id int(11) JA PRI NULL
Customer_Name varchar(30) JA NULL
Telefonnummer varchar(10) JA NULL
Package_Id Int(11) JA MUL NULL

Eksempel 2: Skriv en forespørgsel for at opdatere datatypen for kolonnen Talktime_Limit og Talktime_Price fra Talktime_Plan-tabellen.

ALTER TABLE Talktime_Plan MODIFY (Talktime_Limit varchar(2), Talktime_Price varchar(2));

Vi har ændret datatypen Talktime_Limit og Talktime_Price fra int til varchar i ovenstående forespørgsel. Vi har brugt ALTER TABLE-sætning med MODIFY søgeord lige efter tabelnavnet for at ændre kolonnen.

Vi vil nu bruge søgeordet DESC og tabelnavnet til at krydstjekke, om datatypen Talktime_Limit og Talktime_Price er ændret i tabellen Talktime_Plan.

DESC Talktime_Plan; 
Felt Type Nul Nøgle Standard Ekstra
TalkTime_Id int(11) JA PRI NULL
TalkTime_Limit varchar(2) JA NULL
TalkTime_Price varchar(2) JA NULL

ALTER TABLE DROP COLUMN-sætning i SQL

Dette bruges, når du sletter kolonnen fra den eksisterende tabel. Så i en sådan situation, i stedet for at droppe hele tabellen fra databasen, kan vi bruge nøgleordet DROP til at slette kolonnen.

Syntaks for ALTER TABLE DROP COLUMN-sætning i SQL

ALTER TABLE Table_Name DROP Column_Name;   

Lad os forstå ALTER TABEL DROP i SQL med eksempler.

Eksempel på ALTER TABLE DROP-kolonnen i SQL

Vi har taget SQL-eksempler for at hjælpe dig med at forstå ændring af enkelte kolonner og flere kolonner i den eksisterende tabel ved hjælp af ALTER TABLE DROP-sætning.

Overvej følgende tabeller sammen med de givne poster.

Tabel 1:Mobile_Plan:

Package_Id Data_Id Taletids_Id
1 2 1
2 3 2
3 1 3

Tabel 2:Data_Plan:

Data_Id Data_Limit Data_Price
1 2 30
2 5 70
3 4 55

Tabel 3:Taletidsplan:

Taletids_Id Taletid _grænse Taletid _Pris
1 100 150
2 70 105
3 60 90

Tabel 4:Kunde

Kunde-id Customer_Name Telefonnummer Package_Id
101 Bhavesh 9846522021 1
102 Mahesh 7798598272 3
103 Anita 7865222021 1

Eksempel 1:Skriv en forespørgsel for at fjerne Package_Id fra kundetabellen.

ALTER TABLE Customer DROP COLUMN Package_Id;

Vi har slettet kolonnenavnet Package_Id fra kundetabellen i ovenstående forespørgsel. Vi har brugt ALTER TABLE DROP-sætningen til at fjerne kolonnen fra tabellen.

Vi vil nu krydstjekke, om kolonnen Package_Id fra kundetabellen blev slettet eller ej.

SELECT * FROM CUSTOMER;
Kunde-id Customer_Name Telefonnummer
101 Bhavesh 9846522021
102 Mahesh 7798598272
103 Anita 7865222021

ALTER TABLE RENAME-sætning i SQL

Antag, at vi vil ændre navnet på kolonnen eller tabellen, så vil vi bruge RENAME nøgleordet til at omdøbe felterne eller tabellerne i den eksisterende tabel.

Syntaks for ALTER TABLE RENAME-sætning i SQL

ALTER TABLE Table_Name RENAME Column_Name;   

Lad os forstå ALTER TABEL RENAME i SQL med eksempler.

Eksempel på kolonnen ALTER TABLE RENAME i SQL

Vi har taget SQL-eksempler for at hjælpe dig med at forstå ændring af enkelte kolonner og flere kolonner i den eksisterende tabel ved hjælp af ALTER TABLE RENAME-sætning.

Overvej følgende tabeller sammen med de givne poster.

Kunde-id Customer_Name Telefonnummer
101 Bhavesh 9846522021
102 Mahesh 7798598272
103 Anita 7865222021

Eksempel 1:Skriv en forespørgsel for at ændre navnet på kundetabellen.

ALTER TABLE Customer RENAME TO CUST;

I ovenstående forespørgsel har vi omdøbt tabelnavnet på kundetabellen til Cust-tabellen. Vi brugte ALTER TABLE RENAME-sætningen til at omdøbe tabellens navn.

Vi krydstjekker om tabellens navn er ændret eller ej.

SHOW TABLES;

Eksempel 1:Skriv en forespørgsel for at ændre navnet på kolonnen CustomerId til cid fra Cust-tabellen.

ALTER TABLE Cust RENAME COLUMN CustomerId cid int not null;

I ovenstående forespørgsel har vi ændret kolonnenavnet CustomerId til Cid. Vi har brugt ALTER TABLE RENAME-sætningen til at omdøbe tabellens navn.

Vi krydstjekker om tabellens navn er ændret eller ej.

SELECT * FROM CUST; 


  1. SQL-serverforespørgsel for at få listen over kolonner i en tabel sammen med datatyper, IKKE NULL og PRIMÆRE NØGLE-begrænsninger

  2. Hvad er forskellene mellem Merge Join og Lookup-transformationer i SSIS?

  3. Hvordan ignorerer jeg og-tegn i et SQL-script, der kører fra SQL Plus?

  4. Hvordan nulstiller man kørende SUM, efter at den når en tærskel?