Server

Mysql Tabelle Einfach Umbenennen [GELÖST]

manchmal ist unser Tabellenname nicht aussagekräftig, so dass es erforderlich ist, den Namen der Tabelle umzubenennen oder zu ändern. MySQL bietet eine nützliche Syntax, mit der eine oder mehrere Tabellen in der aktuellen Datenbank umbenannt werden können.

Syntax

Im Folgenden finden Sie die Syntax zum Ändern des Tabellennamens:

mysql> RENAME alte_tabelle TO neue_tabelle;

Hier müssen wir sicherstellen, dass neue_tabelle nicht existieren darf, und alte_tabelle in der Datenbank vorhanden sein sollte. Ansonsten wird eine Fehlermeldung ausgegeben. Es soll sichergestellt werden, dass die Tabelle nicht gesperrt ist und keine aktiven Transaktionen vorliegen, bevor diese Anweisung ausgeführt wird.

HINWEIS: Wenn wir die RENAME TABLE-Anweisung verwenden, sind ALTER– und DROP TABLE-Rechte für die vorhandene Tabelle erforderlich. Außerdem kann diese Anweisung nicht den Namen einer temporären Tabelle ändern.

Umbenennen mehrerer Tabellen

Wir können auch die MySQL-Anweisung RENAME TABLE verwenden, um mehr als einen Tabellennamen mit einer einzigen Anweisung zu ändern, wie unten gezeigt:

mysql> RENAME TABLE alte_tabelle1 TO neue_tabelle1,  
              alte_tabelle2 TO neue_tabelle2, alte_tabelle3 TO neue_tabelle3;   

Ab der Version MySQL 8.0.13 können wir den alten Tabellennamen mit einem LOCK-Statement gesperrt ändern und auch die WRITE LOCK-Klausel verwenden. Zum Beispiel sind die folgenden die gültige Anweisung:

mysql> LOCK TABLE alte_tabelle1  WRITE;  
 RENAME TABLE alte_tabelle1 TO neue_tabelle1,  
              neue_tabelle1 TO neue_tabelle2;  

Le seguenti dichiarazioni non sono permesse:

mysql> LOCK TABLE alte_tabelle1   READ;  
 RENAME TABLE alte_tabelle1 TO neue_tabelle1,  
              neue_tabelle1 TO neue_tabelle2;  

Vor der Version MySQL 8.0.13 können wir den Tabellennamen, der mit der Anweisung LOCK TABLE gesperrt wurde, nicht ändern.

MySQL verwendet auch die Anweisung RENAME TABLE, um eine Tabelle von einer Datenbank in eine andere Datenbank zu verschieben, wie unten gezeigt:

mysql> RENAME TABLE dies_db.tablel_name TO andere_db.tablel_name;  

Tabelle mit ALTER-Anweisung umbenennen

Die ALTER TABLE-Anweisung kann auch verwendet werden, um die bestehende Tabelle in der aktuellen Datenbank umzubenennen. Im Folgenden finden Sie die Syntax der ALTER TABLE-Anweisung:

mysql> ALTER TABLE alte_tabelle RENAME TO neue_tabelle;  

MySQL RENAME TABLE Beispiel

Lassen Sie uns anhand verschiedener Beispiele verstehen, wie die Anweisung RENAME TABLE in MySQL funktioniert. Nehmen wir an, wir haben eine Tabelle namens EMPLOYEE, und aus irgendeinem Grund besteht die Notwendigkeit, sie in eine Tabelle namens CUSTOMER zu ändern.

Tabelle Name: employee

Tabelle Name: employee

Führen Sie anschließend die folgende Syntax aus, um den Tabellennamen zu ändern:

mysql> RENAME employee TO customer;  

Ausgabe

Wir sehen, dass die Tabelle mit dem Namen “employee” in eine neue Tabelle mit dem Namen “customer” umgewandelt wird:

customer Tabelle

In der obigen Ausgabe können wir sehen, dass eine Fehlermeldung ausgegeben wird, wenn wir den Tabellennamen employee nach der Ausführung einer RENAME TABLE-Anweisung verwenden.

Wie man mehrere Tabellen umbenennt

Die RENAME TABLE-Anweisung in MySQL erlaubt es uns auch, mehr als einen Tabellennamen innerhalb einer einzigen Anweisung zu ändern. Siehe die folgende Anweisung:

Angenommen, unsere Datenbank “myemployeedb” hat die folgenden Tabellen:

myemployeedb Tabellen

Wenn wir den Tabellennamen “customer” in “employee” und den Tabellennamen “shirts” in “garments” ändern wollen, führen Sie die folgende Anweisung aus:

mysql> RENAME TABLE customer TO employee, shirts TO garments;  

Ausgabe

Wir können sehen, dass der Tabellenname “customer” in “employee” und der Tabellenname “shirts” in “garments” erfolgreich umbenannt wurden.

Wie man mehrere Tabellen umbenennt

Tabelle mit ALTER-Anweisung umbenennen

Die ALTER TABLE-Anweisung kann auch verwendet werden, um die bestehende Tabelle in der aktuellen Datenbank umzubenennen. Im Folgenden finden Sie die Syntax der ALTER TABLE-Anweisung:

mysql> ALTER TABLE alte_tabelle RENAME TO neue_tabelle;  

Sehen Sie sich die folgende Abfrage an, die den vorhandenen Tabellennamen garments in den neuen Tabellennamen shirts ändert:

mysql> ALTER TABLE garments RENAME TO shirts;

Ausgabe

Hier sehen wir, dass der Tabellenname garments in den Tabellennamen shirts umbenannt wurde.

Tabelle mit ALTER-Anweisung umbenennen

Tags: mysqlserver