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

SQL Alter-Tabelle

Wenn Sie in der strukturierten Abfragesprache Spalten zu einer vorhandenen Tabelle hinzufügen möchten, ändern Sie die Tabelle oder löschen Sie Spalten aus der Tabelle. Alle diese Operationen sind nur zulässig, während die ALTER TABLE-Anweisung verwendet wird. Die ALTER TABLE-Anweisung erlaubt Benutzern auch, die SQL-Einschränkungen für die vorhandenen Tabellen in der SQL hinzuzufügen oder zu löschen.

Die ALTER TABLE-Anweisung erlaubt dem Benutzer auch, die vorhandene Tabelle umzubenennen.

ALTER TABLE ADD COLUMN-Anweisung in SQL

Dies wird verwendet, wenn Sie der vorhandenen Tabelle Spalten hinzufügen müssen. In einer solchen Situation können Sie, anstatt eine neue Tabelle zu erstellen, eine Spalte in einer vorhandenen Tabelle mit dem Schlüsselwort ADD hinzufügen.

Syntax der ALTER TABLE ADD COLUMN-Anweisung in SQL

ALTER TABLE Table_Name ADD Column_Name Data_Type;   

Die obige Syntax wird verwendet, um einer bestehenden Tabelle eine Spalte hinzuzufügen, und ermöglicht es den Benutzern, nur ein einzelnes Feld in der Tabelle hinzuzufügen.

Verwenden Sie die folgende Syntax, um einer vorhandenen Tabelle mehr als eine Spalte hinzuzufügen:

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

Lassen Sie uns ALTER TABEL ADD COLUMN in SQL anhand von Beispielen verstehen.

Beispiel für ALTER TABLE ADD COLUMN in SQL

Wir haben mehrere SQL-Beispiele genommen, die Ihnen helfen werden, das Hinzufügen einer einzelnen Spalte und mehrerer Spalten in der vorhandenen Tabelle mit der Anweisung ALTER TABLE ADD COLUMN zu verstehen.

Betrachten Sie die folgenden Tabellen zusammen mit den angegebenen Datensätzen.

Tabelle 1:Mobile_Plan:

Package_Id Daten_ID Talktime_Id
1 2 1
2 3 2
3 1 3

Tabelle 2:Data_Plan:

Daten-ID Data_Limit Data_Price
1 2 30
2 5 70
3 4 55

Tabelle 3:Talktime_Plan:

Talktime_Id Gesprächszeit _Limit Gesprächszeit _Preis
1 100 150
2 70 105
3 60 90

Tabelle 4:Kunde (leere Tabelle)

Beispiel 1:Schreiben Sie eine Abfrage, um eine neue Spalte Extra_Data_Price in der Data_Plan-Tabelle hinzuzufügen.

ALTER TABLE Data_Plan ADD Extra_Data_Price int; 

Wir haben die ALTER TABLE ADD-Anweisung in der obigen Abfrage verwendet, um eine neue Extra_Data_Price-Spalte in der Data_Plan-Tabelle hinzuzufügen. Wir haben der bestehenden Tabelle eine einzelne Spalte hinzugefügt.

Wir werden nun das Schlüsselwort DESC und den Tabellennamen verwenden, um zu überprüfen, ob die Spalte Extra_Data_Price in der Tabelle Data_Plan erfolgreich hinzugefügt wurde oder nicht.

DESC Data_Plan;   
Feld Typ Null Schlüssel Standard Extra
Daten_ID int(11) NEIN PRI NULL
Data_Limit int(11) JA NULL
Data_Price int(11) JA NULL
Extra_Data_Price Int(11) JA

Beispiel 2: Schreiben Sie eine Abfrage, um mehrere Spalten CustomerId, Customer_Name und Phone_Number in der Customer-Tabelle hinzuzufügen, die leer ist und keine Spalten enthält.

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

Wir haben die ALTER TABLE ADD-Anweisung in der obigen Abfrage verwendet, um mehrere neue Spalten CustomerId, Customer_Name und Phone_Number in der Customer-Tabelle hinzuzufügen. Wir haben der bestehenden Tabelle mehrere Spalten hinzugefügt.

Wir werden nun das DESC-Schlüsselwort und den Tabellennamen verwenden, um zu überprüfen, ob die Spalten CustomerId, Customer_Name und Phone_Number erfolgreich zur Customer-Tabelle hinzugefügt wurden oder nicht.

DESC Customer;   
Feld Typ Null Schlüssel Standard Extra
Kundennummer int(11) JA NULL
Kundenname varchar(20) JA NULL
Telefonnummer varchar(10) JA NULL

Angenommen, Sie möchten einer vorhandenen Tabelle Einschränkungen wie Primärschlüssel und Fremdschlüssel hinzufügen. Wir nehmen ein Beispiel für das Hinzufügen von Primary Key Constraints und Foreign Key Constraints zu einer bestehenden Tabelle. Wir können diese Einschränkungen auch mit der Anweisung ALTER TABLE ADD hinzufügen.

Beispiel 3: Schreiben Sie eine Abfrage, um eine Primärschlüsseleinschränkung für den Spaltennamen CustomerId in der Customer-Tabelle hinzuzufügen.

ALTER TABLE Customer ADD Primary Key(CustomerId);

In der obigen Abfrage haben wir die ALTER TABLE ADD-Anweisung verwendet, um die Primärschlüsseleinschränkung für den Spaltennamen CustomerId in der Customer-Tabelle hinzuzufügen. Wir haben das Primärschlüssel-Schlüsselwort mit der ALTER TABLE ADD-Anweisung verwendet, um eine Einschränkung für die CustomerId hinzuzufügen.

Wir werden nun das Schlüsselwort DESC und den Tabellennamen verwenden, um zu prüfen, ob der Spaltenschlüssel CustomerId in der Customer-Tabelle in PRI geändert wurde.

DESC Customer;   
Feld Typ Null Schlüssel Standard Extra
Kundennummer int(11) JA PRI NULL
Kundenname varchar(20) JA NULL
Telefonnummer varchar(10) JA NULL

Beispiel 4: Schreiben Sie eine Abfrage, um eine Foreign Key-Einschränkung für den Spaltennamen Package_Id in der Customer-Tabelle hinzuzufügen.

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

In der obigen Abfrage haben wir zuerst die Spalte „Package_Id“ in der Tabelle „Customer“ hinzugefügt und dann den Fremdschlüssel für dieselbe Spalte „Package_Id“ in derselben Abfrage mit der Anweisung ALTER TABLE ADD verwendet.

Wir werden jetzt das Schlüsselwort DESC und den Tabellennamen verwenden, um zu überprüfen, ob die Spalte Package_Id in der Tabelle Customer hinzugefügt wurde oder nicht erfolgreich war, und den Schlüssel in MUL ändern.

DESC Customer;   
Feld Typ Null Schlüssel Standard Extra
Kundennummer int(11) JA PRI NULL
Kundenname varchar(20) JA NULL
Telefonnummer varchar(10) JA NULL
Paket_ID Int(11) JA MUL NULL

ALTER TABLE MODIFY COLUMN-Anweisung in SQL

Angenommen, Sie möchten den Spaltennamen oder die Definition wie einen Datentyp aktualisieren. In diesem Fall verwenden wir die ALTER TABLE MODIFY-Anweisung, um den Spaltendatentyp der bereits vorhandenen Tabelle zu aktualisieren. Wir werden das Schlüsselwort MODIFY direkt nach dem Tabellennamen in der Anweisung verwenden.

Syntax der ALTER TABLE MODIFY COLUMN-Anweisung in SQL

ALTER TABLE Table_Name MODIFY Column_Name Data_Type;   

Die obige Syntax wird verwendet, um Spalten in einer vorhandenen Tabelle zu ändern, und ermöglicht dem Benutzer, nur ein einzelnes Feld zu ändern.

Um mehr als eine Spalte in einer bestehenden Tabelle zu ändern, verwenden Sie die folgende Syntax:

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

Lassen Sie uns ALTER TABEL MODIFY in SQL anhand von Beispielen verstehen.

Beispiel für die ALTER TABLE MODIFY-Spalte in SQL

Wir haben mehrere SQL-Beispiele genommen, um Ihnen zu helfen, das Ändern einzelner Spalten und mehrerer Spalten in der vorhandenen Tabelle mit der ALTER TABLE MODIFY-Anweisung zu verstehen.

Betrachten Sie die folgenden Tabellen zusammen mit den angegebenen Datensätzen.

Tabelle 1:Mobile_Plan:

Package_Id Daten_ID Talktime_Id
1 2 1
2 3 2
3 1 3

Tabelle 2:Data_Plan:

Daten-ID Data_Limit Data_Price
1 2 30
2 5 70
3 4 55

Tabelle 3:Talktime_Plan:

Talktime_Id Gesprächszeit _Limit Gesprächszeit _Preis
1 100 150
2 70 105
3 60 90

Tabelle 4:Kunde

Kundennummer Kundenname Telefonnummer Paket_ID
101 Bhavesh 9846522021 1
102 Mahesch 7798598272 3
103 Anita 7865222021 1

Beispiel 1: Schreiben Sie eine Abfrage, um die Größe der Spalte Kundenname aus der Kundentabelle zu aktualisieren.

ALTER TABLE Customer MODIFY Customer_Name varchar(30);

In der obigen Abfrage haben wir die Größe der Spalte Customer_Name von 20 auf 30 geändert. Wir haben die ALTER TABLE-Anweisung mit dem Schlüsselwort MODIFY direkt nach dem Tabellennamen verwendet, um die Spalte zu ändern.

Wir werden nun das Schlüsselwort DESC und den Tabellennamen verwenden, um zu prüfen, ob der Datentyp der Spalte Customer_Name in der Customer-Tabelle geändert wurde.

DESC Customer;   
Feld Typ Null Schlüssel Standard Extra
Kundennummer int(11) JA PRI NULL
Kundenname varchar(30) JA NULL
Telefonnummer varchar(10) JA NULL
Paket_ID Int(11) JA MUL NULL

Beispiel 2: Schreiben Sie eine Abfrage, um den Datentyp der Spalten Talktime_Limit und Talktime_Price aus der Tabelle Talktime_Plan zu aktualisieren.

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

Wir haben den Datentyp der Spalten Talktime_Limit und Talktime_Price in der obigen Abfrage von int in varchar geändert. Wir haben die ALTER TABLE-Anweisung mit dem MODIFY-Schlüsselwort direkt nach dem Tabellennamen verwendet, um die Spalte zu ändern.

Wir werden nun das Schlüsselwort DESC und den Tabellennamen verwenden, um zu prüfen, ob die Datentypen der Spalten Talktime_Limit und Talktime_Price in der Tabelle Talktime_Plan geändert wurden oder nicht.

DESC Talktime_Plan; 
Feld Typ Null Schlüssel Standard Extra
TalkTime_Id int(11) JA PRI NULL
TalkTime_Limit varchar(2) JA NULL
TalkTime_Price varchar(2) JA NULL

ALTER TABLE DROP COLUMN-Anweisung in SQL

Dies wird verwendet, wenn Sie die Spalte aus der vorhandenen Tabelle löschen. Dann können wir in einer solchen Situation, anstatt die gesamte Tabelle aus der Datenbank zu löschen, das Schlüsselwort DROP verwenden, um die Spalte zu löschen.

Syntax der ALTER TABLE DROP COLUMN-Anweisung in SQL

ALTER TABLE Table_Name DROP Column_Name;   

Lassen Sie uns den ALTER TABEL DROP in SQL anhand von Beispielen verstehen.

Beispiel für die ALTER TABLE DROP-Spalte in SQL

Wir haben SQL-Beispiele genommen, um Ihnen zu helfen, das Ändern einzelner Spalten und mehrerer Spalten in der vorhandenen Tabelle mit der Anweisung ALTER TABLE DROP zu verstehen.

Betrachten Sie die folgenden Tabellen zusammen mit den angegebenen Datensätzen.

Tabelle 1:Mobile_Plan:

Package_Id Daten_ID Talktime_Id
1 2 1
2 3 2
3 1 3

Tabelle 2:Data_Plan:

Daten-ID Data_Limit Data_Price
1 2 30
2 5 70
3 4 55

Tabelle 3:Talktime_Plan:

Talktime_Id Gesprächszeit _Limit Gesprächszeit _Preis
1 100 150
2 70 105
3 60 90

Tabelle 4:Kunde

Kundennummer Kundenname Telefonnummer Paket_ID
101 Bhavesh 9846522021 1
102 Mahesch 7798598272 3
103 Anita 7865222021 1

Beispiel 1:Schreiben Sie eine Abfrage, um die Package_Id aus der Customer-Tabelle zu löschen.

ALTER TABLE Customer DROP COLUMN Package_Id;

Wir haben den Spaltennamen Package_Id aus der Customer-Tabelle in der obigen Abfrage entfernt. Wir haben die Anweisung ALTER TABLE DROP verwendet, um die Spalte aus der Tabelle zu löschen.

Wir prüfen nun, ob die Spalte Package_Id aus der Customer-Tabelle gelöscht wurde oder nicht erfolgreich war.

SELECT * FROM CUSTOMER;
Kundennummer Kundenname Telefonnummer
101 Bhavesh 9846522021
102 Mahesch 7798598272
103 Anita 7865222021

ALTER TABLE RENAME-Anweisung in SQL

Angenommen, wir möchten den Namen der Spalte oder Tabelle ändern, dann verwenden wir das Schlüsselwort RENAME, um die Felder oder Tabellen der vorhandenen Tabelle umzubenennen.

Syntax der ALTER TABLE RENAME-Anweisung in SQL

ALTER TABLE Table_Name RENAME Column_Name;   

Lassen Sie uns ALTER TABEL RENAME in SQL anhand von Beispielen verstehen.

Beispiel für die Spalte ALTER TABLE RENAME in SQL

Wir haben SQL-Beispiele genommen, um Ihnen zu helfen, das Ändern einzelner Spalten und mehrerer Spalten in der vorhandenen Tabelle mit der Anweisung ALTER TABLE RENAME zu verstehen.

Betrachten Sie die folgenden Tabellen zusammen mit den angegebenen Datensätzen.

Kundennummer Kundenname Telefonnummer
101 Bhavesh 9846522021
102 Mahesch 7798598272
103 Anita 7865222021

Beispiel 1:Schreiben Sie eine Abfrage, um den Namen der Kundentabelle zu ändern.

ALTER TABLE Customer RENAME TO CUST;

In der obigen Abfrage haben wir den Tabellennamen der Customer-Tabelle in Cust-Tabelle umbenannt. Wir haben die Anweisung ALTER TABLE RENAME verwendet, um den Tabellennamen umzubenennen.

Wir werden überprüfen, ob der Name der Tabelle geändert wurde oder nicht erfolgreich.

SHOW TABLES;

Beispiel 1:Schreiben Sie eine Abfrage, um den Namen der Spalte CustomerId in cid aus der Cust-Tabelle zu ändern.

ALTER TABLE Cust RENAME COLUMN CustomerId cid int not null;

In der obigen Abfrage haben wir den Spaltennamen CustomerId in Cid geändert. Wir haben die Anweisung ALTER TABLE RENAME verwendet, um den Tabellennamen umzubenennen.

Wir werden überprüfen, ob der Name der Tabelle geändert wurde oder nicht erfolgreich.

SELECT * FROM CUST;