In SQL sind häufig strukturelle Änderungen an einer Datenbank erforderlich, beispielsweise das Umbenennen von Tabellen oder Spalten, das Hinzufügen neuer Spalten oder das Ändern von Datentypen. Mit dem Befehl ALTER TABLE können diese Änderungen effizient durchgeführt werden, ohne dass sich dies auf vorhandene Daten auswirkt. Es ist ein wesentlicher Befehl zum Verwalten und Aktualisieren von Datenbankschemata, wenn sich die Anwendungsanforderungen ändern.
Beispiel: Erstellen wir zunächst eine Beispiel-Student-Tabelle, um den ALTER-Befehl zu demonstrieren:
Abfrage:
ALTER TABLE students
RENAME TO learners;
Ausgabe:
Syntax für den ALTER-Befehl
Hier sind die gängigen Syntaxformate für die Verwendung des ALTER TABLE-Befehls:
1. Eine Tabelle umbenennen
ALTER TABLE Tabellenname
UMBENENNEN IN new_table_name;
2. Umbenennen einer Spalte
ALTER TABLE Tabellenname
SPALTE alten_Spaltennamen umbenennen in neuen_Spaltennamen;
3. Hinzufügen einer neuen Spalte
ALTER TABLE Tabellenname
Datentyp „Spaltenname“ hinzufügen;Numpy-Standardabweichung
ALTER TABLE Tabellenname
MODIFY COLUMN Spaltenname neuer_Datentyp;
Beispiele für den ALTER-Befehl in SQL
Nachfolgend finden Sie praktische Beispiele, die uns helfen sollen, zu verstehen, wie der ALTER-Befehl in verschiedenen Szenarien effektiv eingesetzt werden kann. Zu diesen Beispielen gehört das Umbenennen von Tabellen oder Spalten, das Hinzufügen neuer Spalten oder Spalte wechseln Datentypen.
1. Erstellen Sie eine Beispieltabelle
Lassen Sie uns zunächst einen Beispiel-Studenten erstellen Tabelle zur Demonstration von ALTER Befehl:
CREATE TABLE Student (
id INT PRIMARY KEY
name VARCHAR(50)
age INT
email VARCHAR(50)
phone VARCHAR(20)
);
Lassen Sie uns einige Daten einfügen und dann die ALTER-Operation ausführen, um den Befehl alter besser zu verstehen.
INSERT INTO Student (id name age email phone)
VALUES
(1 'Amit' 20 '[email protected]' '9999999999')
(2 'Rahul' 22 '[email protected]' '8888888888')
(3 'Priya' 21 '[email protected]' '7777777777')
(4 'Sonia' 23 '[email protected]' '6666666666')
(5 'Kiran' 19 '[email protected]' '5555555555');
Ausgabe
Beispiel 1: Benennen Sie eine Spalte um
Ändern Sie den Namen der Spalte name in der Tabelle Student in FIRST_NAME. Um den Spaltennamen der vorhandenen Tabelle zu ändern, müssen wir das Schlüsselwort Column verwenden, bevor wir den zu ändernden vorhandenen Spaltennamen schreiben.
Syntax
ALTER TABLE Student RENAME COLUMN Column_NAME TO FIRST_NAME;
Abfrage:
ALTER TABLE Student RENAME Column name TO FIRST_NAME;Ausgabe
AusgabeBeispiel 2: Benennen Sie eine Tabelle um
In diesem Beispiel möchten wir die Tabelle umbenennenStudentZuStudent_Detailsmit derALTER TABLEBefehl, der den Namen aussagekräftiger macht und relevant für den Inhalt.
Abfrage:
ALTER TABLE Student RENAME TO Student_Details;Ausgabe
Beispiel 3: Eine neue Spalte hinzufügen
Um eine neue Spalte zur vorhandenen Tabelle hinzuzufügen, müssen wir zuerst die Tabelle mit dem ALTER TABLE-Befehl Tabellenname auswählen und dann den Namen der neuen Spalte und ihren Datentyp mit ADD Spaltenname schreiben Datentyp. Werfen wir einen Blick nach unten, um es besser zu verstehen.
Syntax
ALTER TABLE Tabellenname
Datentyp „Spaltenname“ hinzufügen;Was ist Mac OS?
Abfrage:
ALTER TABLE Student ADD marks INT;Ausgabe
Im Beispiel diephoneSpalte wird aktualisiert vonVARCHAR(20)ZuBIGINT um numerische Daten effizienter zu speichern und sicherzustellen Datenintegrität für Telefonnummern ohne unnötige Zeichen.
Syntax
ALTER TABLE Tabellenname
MODIFY COLUMN Spaltenname neuer_Datentyp;
Abfrage:
ALTER TABLE Student_Details
MODIFY COLUMN phone BIGINT;
Ausgabe
| Ausweis | Name | Alter | Telefon | |
|---|---|---|---|---|
| 1 | Was | 20 | [email protected] | 9999999999 |
| 2 | Rahul | 22 | [email protected] | 8888888888 |
| 3 | Priya | 21 | [email protected] | 7777777777 |
| 4 | Sonia | 23 | [email protected] | 6666666666 |
| 5 | Der Anruf | 19 | [email protected] | 5555555555 |
Erläuterung :
- Die Telefonspalte verfügt jetzt über einen BIGINT-Datentyp, der zum Speichern großer numerischer Werte geeignet ist.
- Vorhandene Daten bleiben unverändert, werden jedoch als Ganzzahlen gespeichert statt Saiten.
Weitere Anwendungsfälle für ALTER-Befehle
1. Entfernen einer Spalte : In einigen Fällen müssen wir möglicherweise eine Spalte entfernen. Dazu können Sie die DROP COLUMN-Syntax verwenden:
ALTER TABLE Student_Details
DROP COLUMN-Markierungen;
Kajal Aggarwal
Dieser Befehl löscht die Markierungsspalte vollständig aus der Tabelle
2. Ändern des Standardwerts einer Spalte : Wir können den Standardwert einer Spalte auch mithilfe der SET DEFAULT-Klausel ändern:
ALTER TABLE Student_Details
ALTER COLUMN age SET DEFAULT 18;
3. Umbenennen einer Tabelle oder Spalte in verschiedenen Datenbanken : Beachten Sie, dass die SQL-Syntax je nach Datenbanksystem variieren kann. So würden wir eine Tabelle oder Spalte in MySQL MariaDB umbenennen und Orakel :
- MySQL / MariaDB : Die Syntax zum Umbenennen einer Spalte ist ähnlich, Sie müssen jedoch auch den Befehl CHANGE COLUMN verwenden, um eine Spalte umzubenennen:
ALTER TABLE Student
CHANGE COLUMN old_column_name neuer_column_name Datentyp;
- Orakel : Oracle unterstützt die RENAME COLUMN-Syntax, erfordert jedoch eine andere Syntax zum Umbenennen einer Tabelle:
Quiz erstellenALTER TABLE Student RENAME COLUMN old_column_name TO new_column_name;