Einführung
MySQL bietet eine dynamische Umgebung, die es Ihnen ermöglicht, Datenbankelemente mit ein paar grundlegenden Befehlen zu ändern. Indem Sie lernen, verschiedene Anweisungen zu verwenden, können Sie Ihre Datenbanken mühelos verwalten.
Dieses Tutorial enthält alle Befehle, die zum Umbenennen einer Spalte in einer MySQL-Datenbank benötigt werden.
Voraussetzungen
- Eine funktionale Instanz von MySQL
- Ein Benutzer mit ALTER-Berechtigungen auf dem MySQL-Server
MySQL-Spalte mit ALTER TABLE-Befehl umbenennen
ALTER TABLE
ist ein wesentlicher Befehl zum Ändern der Struktur einer MySQL-Tabelle. Sie können damit Spalten hinzufügen oder löschen, den Datentyp innerhalb der Spalten ändern und sogar ganze Datenbanken umbenennen. Die Funktion, die uns am meisten beschäftigt, ist die Verwendung von ALTER TABLE
um eine Spalte umzubenennen.
Anweisungen geben uns zusätzliche Kontrolle über den Umbenennungsprozess. Die RENAME COLUMN
und CHANGE
-Anweisungen ermöglichen beide, dass die Namen vorhandener Spalten geändert werden. Der Unterschied besteht darin, dass die CHANGE
-Klausel kann auch verwendet werden, um die Datentypen einer Spalte zu ändern.
MySQL-Spalte mit der RENAME-Anweisung umbenennen
Der einfachste Weg, eine Spalte umzubenennen, ist die Verwendung von ALTER TABLE
mit dem Befehl RENAME COLUMN
Klausel. Diese Klausel ist seit MySQL Version 8.0 verfügbar .
Lassen Sie uns seine einfache Syntax veranschaulichen. Um einen Spaltennamen zu ändern, geben Sie die folgende Anweisung in Ihre MySQL-Shell ein:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
Ersetzen Sie table_name
, old_column_name
und new_column_name
mit Ihren Tabellen- und Spaltennamen. Denken Sie daran, dass Sie eine Spalte nicht in einen Namen umbenennen können, der bereits in der Tabelle vorhanden ist.
Zum Beispiel, um die Spalte id zu ändern in employee_id in der Tabelle Mitarbeiter , würden Sie Folgendes ausführen:
ALTER TABLE employees RENAME COLUMN id TO employ_id;
Die RENAME COLUMN
-Anweisung kann nur zum Umbenennen einer Spalte verwendet werden. Wenn Sie zusätzliche Funktionen benötigen, wie z. B. das Ändern der Datendefinition oder der Position einer Spalte, verwenden Sie den CHANGE
Klausel statt.
MySQL-Spalte mit der CHANGE-Anweisung umbenennen
Die CHANGE
-Klausel bietet wichtige Ergänzungen zum Umbenennungsprozess. Es kann verwendet werden, um eine Spalte umzubenennen und den Datentyp dieser Spalte mit demselben Befehl zu ändern.
Geben Sie den folgenden Befehl in Ihrer MySQL-Client-Shell ein, um den Namen der Spalte und ihre Definition zu ändern:
ALTER TABLE table_name CHANGE old_column_name new_col_name Data Type;
Sie können den Datentyp der Spalte ändern oder den vorhandenen beibehalten. In beiden Fällen müssen Sie den Datentyp angeben, da das Element obligatorisch ist.
Zum Beispiel, um die Spalte id zu ändern in employee_id die den Datentyp VARCHAR(25) hat in der Tabelle Mitarbeiter , würden Sie Folgendes ausführen:
ALTER TABLE employees CHANGE id employ_id VARCHAR(25);
Zusätzliche Optionen
Sie können zusätzliche Optionen verwenden, um Tabellenspalten weiter zu manipulieren. Die CHANGE
ermöglicht es Ihnen auch, die Spalte an einer anderen Position in der Tabelle zu platzieren, indem Sie das optionale FIRST | AFTER column_name
Klausel. Zum Beispiel:
ALTER TABLE table_name CHANGE old_column_name new_col_name Data Type AFTER column_x;
Mit dem obigen Befehl können Sie den Namen der Spalte ändern und den Datentyp in y_data_type
ändern , und positionierte die Spalte nach column_x
.
Mehrere MySQL-Spalten umbenennen
Mit MySQL können Sie mehrere Spalten mit einem einzigen Befehl umbenennen. Diese Option ist mit RENAME
möglich und die CHANGE
Aussage.
Um die Namen mehrerer Spalten mit der RENAME COLUMN-Klausel zu ändern, verwenden Sie die Syntax:
ALTER TABLE table_name
RENAME COLUMN old_column_name1 TO new_col_name1,
RENAME COLUMN old_column_name2 TO new_col_name2,
RENAME COLUMN old_column_name3 TO new_col_name3;
Um die Namen mehrerer Spalten mit der CHANGE-Klausel zu ändern, verwenden Sie die Syntax:
ALTER TABLE table_name
CHANGE old_column_name1 new_col_name1 Data Type,
CHANGE old_column_name2 new_col_name2 Data Type,
CHANGE old_column_name3 new_col_name3 Data Type;