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

SQL Alter tabella

In Structured Query Language, se desideri aggiungere colonne in una tabella esistente, modificare la tabella o eliminare colonne dalla tabella. Tutte queste operazioni sono consentite solo durante l'utilizzo dell'istruzione ALTER TABLE. L'istruzione ALTER TABLE consente inoltre agli utenti di aggiungere o eliminare i vincoli SQL sulle tabelle esistenti nell'SQL.

L'istruzione ALTER TABLE consente inoltre all'utente di rinominare la tabella esistente.

Istruzione ALTER TABLE ADD COLUMN in SQL

Viene utilizzato quando è necessario aggiungere colonne alla tabella esistente. In tale situazione, invece di creare una nuova tabella, puoi aggiungere una colonna in una tabella esistente utilizzando la parola chiave ADD.

Sintassi dell'istruzione ALTER TABLE ADD COLUMN in SQL

ALTER TABLE Table_Name ADD Column_Name Data_Type;   

La sintassi precedente viene utilizzata per aggiungere una colonna in una tabella esistente e consente agli utenti di aggiungere un solo campo nella tabella.

Per aggiungere più di una colonna in una tabella esistente, utilizza la seguente sintassi:

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

Comprendiamo l'ALTER TABEL ADD COLUMN in SQL con esempi.

Esempio di ALTER TABLE ADD COLUMN in SQL

Abbiamo preso più esempi SQL, che ti aiuteranno a capire l'aggiunta di una singola colonna e più colonne nella tabella esistente usando l'istruzione ALTER TABLE ADD COLUMN.

Considera le seguenti tabelle insieme ai record forniti.

Tabella 1:Mobile_Plan:

ID_pacchetto ID_dati Id_tempo di conversazione
1 2 1
2 3 2
3 1 3

Tabella 2:Data_Plan:

ID_dati Limite_dati Prezzo_dati
1 2 30
2 5 70
3 4 55

Tabella 3:Piano di conversazione:

Talktime_Id Tempo di conversazione _Limite Tempo di conversazione _Prezzo
1 100 150
2 70 105
3 60 90

Tabella 4:Cliente (tabella vuota)

Esempio 1:scrivi una query per aggiungere una nuova colonna Extra_Data_Price nella tabella Data_Plan.

ALTER TABLE Data_Plan ADD Extra_Data_Price int; 

Abbiamo utilizzato l'istruzione ALTER TABLE ADD nella query precedente per aggiungere una nuova colonna Extra_Data_Price nella tabella Data_Plan. Abbiamo aggiunto una singola colonna nella tabella esistente.

Ora utilizzeremo la parola chiave DESC e il nome della tabella per verificare se la colonna Extra_Data_Price è stata aggiunta o meno correttamente nella tabella Data_Plan.

DESC Data_Plan;   
Campo Digita Null Chiave Predefinito Extra
ID_dati int(11) NO PRI NULLO
Limite_dati int(11) SI NULLO
Prezzo_dati int(11) SI NULLO
Prezzo_dati_extra Int(11) SI

Esempio 2: Scrivi una query per aggiungere più colonne CustomerId, Customer_Name e Phone_Number nella tabella Cliente, che è vuota, senza colonne.

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

Abbiamo utilizzato l'istruzione ALTER TABLE ADD nella query precedente per aggiungere più nuove colonne CustomerId, Customer_Name e Phone_Number nella tabella Customer. Abbiamo aggiunto più colonne nella tabella esistente.

Ora utilizzeremo la parola chiave DESC e il nome della tabella per verificare se le colonne CustomerId, Customer_Name e Phone_Number sono state aggiunte correttamente o meno nella tabella Cliente.

DESC Customer;   
Campo Digita Null Chiave Predefinito Extra
ID cliente int(11) SI NULLO
Nome_cliente varchar(20) SI NULLO
Numero_Telefono varchar(10) SI NULLO

Si supponga di voler aggiungere vincoli come chiave primaria, chiave esterna a una tabella esistente. Faremo un esempio dell'aggiunta di vincoli di chiave primaria e di chiavi esterne alla tabella esistente. Possiamo anche aggiungere questi vincoli usando l'istruzione ALTER TABLE ADD.

Esempio 3: Scrivi una query per aggiungere il vincolo di chiave primaria sul nome della colonna CustomerId nella tabella cliente.

ALTER TABLE Customer ADD Primary Key(CustomerId);

Nella query precedente, abbiamo utilizzato l'istruzione ALTER TABLE ADD per aggiungere il vincolo della chiave primaria sul nome della colonna CustomerId nella tabella del cliente. Abbiamo utilizzato la parola chiave Chiave primaria con l'istruzione ALTER TABLE ADD per aggiungere un vincolo su CustomerId.

Ora utilizzeremo la parola chiave DESC e il nome della tabella per verificare se la chiave della colonna CustomerId è stata modificata in PRI nella tabella Customer.

DESC Customer;   
Campo Digita Null Chiave Predefinito Extra
ID cliente int(11) SI PRI NULLO
Nome_cliente varchar(20) SI NULLO
Numero_Telefono varchar(10) SI NULLO

Esempio 4: Scrivi una query per aggiungere il vincolo di chiave esterna al nome della colonna Package_Id nella tabella cliente.

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

Nella query precedente, abbiamo prima aggiunto la colonna Package_Id nella tabella Customer, quindi abbiamo utilizzato la chiave esterna nella stessa colonna Package_Id nella stessa query utilizzando l'istruzione ALTER TABLE ADD.

Utilizzeremo ora la parola chiave DESC e il nome della tabella per verificare se la colonna Package_Id è stata aggiunta o meno correttamente nella tabella Cliente e la chiave cambia in MUL.

DESC Customer;   
Campo Digita Null Chiave Predefinito Extra
ID cliente int(11) SI PRI NULLO
Nome_cliente varchar(20) SI NULLO
Numero_Telefono varchar(10) SI NULLO
ID_pacchetto Int(11) SI MUL NULLO

Istruzione ALTER TABLE MODIFY COLUMN in SQL

Si supponga di voler aggiornare il nome o la definizione della colonna come un tipo di dati. In tal caso, utilizzeremo l'istruzione ALTER TABLE MODIFY per aggiornare il tipo di dati della colonna della tabella già esistente. Useremo la parola chiave MODIFY subito dopo Table_Name nell'istruzione.

Sintassi dell'istruzione ALTER TABLE MODIFY COLUMN in SQL

ALTER TABLE Table_Name MODIFY Column_Name Data_Type;   

La sintassi precedente viene utilizzata per modificare le colonne in una tabella esistente e consente all'utente di modificare solo un singolo campo.

Per modificare più di una colonna in una tabella esistente, utilizzare la sintassi seguente:

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

Comprendiamo ALTER TABEL MODIFY in SQL con esempi.

Esempio di colonna ALTER TABLE MODIFY in SQL

Abbiamo preso più esempi SQL per aiutarti a capire come modificare singole colonne e più colonne nella tabella esistente usando l'istruzione ALTER TABLE MODIFY.

Considera le seguenti tabelle insieme ai record forniti.

Tabella 1:Mobile_Plan:

ID_pacchetto ID_dati Id_tempo di conversazione
1 2 1
2 3 2
3 1 3

Tabella 2:Data_Plan:

ID_dati Limite_dati Prezzo_dati
1 2 30
2 5 70
3 4 55

Tabella 3:Piano di conversazione:

Talktime_Id Tempo di conversazione _Limite Tempo di conversazione _Prezzo
1 100 150
2 70 105
3 60 90

Tabella 4:Cliente

ID cliente Nome_cliente Numero_di_telefono ID_pacchetto
101 Bhavesh 9846522021 1
102 Mahesh 7798598272 3
103 Anita 7865222021 1

Esempio 1: Scrivi una query per aggiornare la dimensione della colonna Nome cliente dalla tabella clienti.

ALTER TABLE Customer MODIFY Customer_Name varchar(30);

Nella query precedente, abbiamo modificato la colonna Customer_Name size da 20 a 30. Abbiamo utilizzato l'istruzione ALTER TABLE con la parola chiave MODIFY subito dopo il nome della tabella per modificare la colonna.

Utilizzeremo ora la parola chiave DESC e il nome della tabella per verificare se il tipo di dati della colonna Nome_cliente è stato modificato nella tabella Cliente.

DESC Customer;   
Campo Digita Null Chiave Predefinito Extra
ID cliente int(11) SI PRI NULLO
Nome_cliente varchar(30) SI NULLO
Numero_Telefono varchar(10) SI NULLO
ID_pacchetto Int(11) SI MUL NULLO

Esempio 2: Scrivi una query per aggiornare il tipo di dati delle colonne Talktime_Limit e Talktime_Price dalla tabella Talktime_Plan.

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

Abbiamo modificato il tipo di dati della colonna Talktime_Limit e Talktime_Price da int a varchar nella query precedente. Abbiamo utilizzato l'istruzione ALTER TABLE con la parola chiave MODIFY subito dopo il nome della tabella per modificare la colonna.

Utilizzeremo ora la parola chiave DESC e il nome della tabella per verificare se i tipi di dati della colonna Limite di conversazione e Prezzo di conversazione sono stati modificati o meno nella tabella Programma di conversazione.

DESC Talktime_Plan; 
Campo Digita Null Chiave Predefinito Extra
TalkTime_Id int(11) SI PRI NULLO
Limite_tempo di conversazione varchar(2) SI NULLO
TalkTime_Price varchar(2) SI NULLO

Istruzione ALTER TABLE DROP COLUMN in SQL

Viene utilizzato quando si elimina la colonna dalla tabella esistente. Quindi in una situazione del genere, invece di eliminare l'intera tabella dal database, possiamo utilizzare la parola chiave DROP per eliminare la colonna.

Sintassi dell'istruzione ALTER TABLE DROP COLUMN in SQL

ALTER TABLE Table_Name DROP Column_Name;   

Comprendiamo l'ALTER TABEL DROP in SQL con esempi.

Esempio di colonna ALTER TABLE DROP in SQL

Abbiamo preso esempi SQL per aiutarti a comprendere la modifica di singole colonne e più colonne nella tabella esistente utilizzando l'istruzione ALTER TABLE DROP.

Considera le seguenti tabelle insieme ai record forniti.

Tabella 1:Mobile_Plan:

ID_pacchetto ID_dati Id_tempo di conversazione
1 2 1
2 3 2
3 1 3

Tabella 2:Data_Plan:

ID_dati Limite_dati Prezzo_dati
1 2 30
2 5 70
3 4 55

Tabella 3:Piano di conversazione:

Talktime_Id Tempo di conversazione _Limite Tempo di conversazione _Prezzo
1 100 150
2 70 105
3 60 90

Tabella 4:Cliente

ID cliente Nome_cliente Numero_di_telefono ID_pacchetto
101 Bhavesh 9846522021 1
102 Mahesh 7798598272 3
103 Anita 7865222021 1

Esempio 1:scrivi una query per eliminare Package_Id dalla tabella Cliente.

ALTER TABLE Customer DROP COLUMN Package_Id;

Abbiamo eliminato il nome della colonna Package_Id dalla tabella Customer nella query precedente. Abbiamo utilizzato l'istruzione ALTER TABLE DROP per eliminare la colonna dalla tabella.

Ora verificheremo in modo incrociato se la colonna Package_Id dalla tabella Customer è stata eliminata o meno correttamente.

SELECT * FROM CUSTOMER;
ID cliente Nome_cliente Numero_di_telefono
101 Bhavesh 9846522021
102 Mahesh 7798598272
103 Anita 7865222021

Istruzione ALTER TABLE RENAME in SQL

Supponiamo di voler cambiare il nome della colonna o della tabella, quindi utilizzeremo la parola chiave RENAME per rinominare i campi o le tabelle della tabella esistente.

Sintassi dell'istruzione ALTER TABLE RENAME in SQL

ALTER TABLE Table_Name RENAME Column_Name;   

Comprendiamo ALTER TABEL RENAME in SQL con esempi.

Esempio di colonna ALTER TABLE RENAME in SQL

Abbiamo preso esempi SQL per aiutarti a comprendere la modifica di singole colonne e più colonne nella tabella esistente utilizzando l'istruzione ALTER TABLE RENAME.

Considera le seguenti tabelle insieme ai record forniti.

ID cliente Nome_cliente Numero_di_telefono
101 Bhavesh 9846522021
102 Mahesh 7798598272
103 Anita 7865222021

Esempio 1:scrivi una query per modificare il nome della tabella Cliente.

ALTER TABLE Customer RENAME TO CUST;

Nella query precedente, abbiamo rinominato il nome della tabella della tabella Customer nella tabella Cust. Abbiamo usato l'istruzione ALTER TABLE RENAME per rinominare il nome della tabella.

Verificheremo se il nome della tabella è stato modificato o meno correttamente.

SHOW TABLES;

Esempio 1:scrivi una query per modificare il nome della colonna CustomerId in cid dalla tabella Cust.

ALTER TABLE Cust RENAME COLUMN CustomerId cid int not null;

Nella query precedente, abbiamo cambiato il nome della colonna CustomerId in Cid. Abbiamo usato l'istruzione ALTER TABLE RENAME per rinominare il nome della tabella.

Verificheremo se il nome della tabella è stato modificato o meno correttamente.

SELECT * FROM CUST;