Benennen Sie eine Tabelle in MySQL um


285

Das Umbenennen einer Tabelle funktioniert in MySQL nicht

RENAME TABLE group TO member;

Die Fehlermeldung lautet

#1064 - You have an error in your SQL syntax; check the manual that corresponds
        to your MySQL server version for the right syntax to use near 'group 
        RENAME TO member' at line 1

Die Abfrage funktioniert für andere Tabellen einwandfrei, aber nicht für die Tabelle group.



3
Beide SQLs sind gleich. Versuchen Sie diese Umbenennungstabelle 'Gruppe' in Mitglied
— Benutzer1406062

5
Dies zeigt deutlich, wie sinnlos es ist, Großbuchstaben für Schlüsselwörter zu verwenden.
— Martin Jambon

8
Nein, tut es nicht. All-Caps-Schlüsselwörter verbessern die Lesbarkeit und werden als Standardstil erwartet.
— Zeilenumbruch

Antworten:


474

groupist ein Schlüsselwort (Teil von GROUP BY ) in MySQL. Sie müssen es mit Backticks umgeben, um MySQL anzuzeigen, dass es als Tabellenname interpretiert werden soll:

RENAME TABLE `group` TO `member`;

hinzugefügt (siehe Kommentare) - Dies sind keine einfachen Anführungszeichen.


51
Und ja, Sie brauchen das Zurück-Häkchen "und nicht das einfache Anführungszeichen". Ich habe das einfache Anführungszeichen aus Gewohnheit gemacht und den Fehler erhalten, aber vielleicht spart dies jemand anderem 10 Sekunden
— Paul

Einige Schlüsselwörter wie NAME sind weiterhin ohne Back Ticks verfügbar. Ich denke, diese Verfügbarkeit ist eine schlechte Praxis, die eines Tages aus MySQL entfernt werden sollte
— ad4s

2
Oder verwenden Sie keine Schlüsselwörter für Tabellen oder Spalten.
— jDub9

1
VERWENDEN SIE KEINE SCHLÜSSELWÖRTER FÜR TABELLEN ODER SPALTEN.
— Mydoglixu


31

Die MySQL-Abfrage für die Umbenennungstabelle lautet

Rename Table old_name TO new_name

In Ihrer Abfrage haben Sie gruppiert, welches der Schlüsselwörter in MySQL. Vermeiden Sie MySQL-Schlüsselwörter für den Namen, während Sie eine Tabelle, einen Feldnamen usw. erstellen.


23
ALTER TABLE old_table_name RENAME new_table_name;

oder

RENAME TABLE old_table_name TO new_table_name;

19

Benennen Sie eine Tabelle in MySQL um:

ALTER TABLE current_name RENAME new_name;

5
Willkommen bei SO. Bitte lesen Sie diese Anleitung, um eine qualitativ hochwertige Antwort zu erhalten. Nur Code anzeigen ist keine gute Praxis.
— thewaywewere

16

Änderung des Tabellennamens

RENAME TABLE old_table_name TO new_table_name;

14

group - ist ein reserviertes Wort in MySQL, deshalb sehen Sie einen solchen Fehler.

#1064 - You have an error in your SQL syntax; check the manual that corresponds
        to your MySQL server version for the right syntax to use near 'group 
        RENAME TO member' at line 1

Sie müssen den Tabellennamen in Backticks einschließen :

RENAME TABLE `group` TO `member`;

13
ALTER TABLE `group` RENAME `member`

group ist ein Schlüsselwort, in das Sie einschließen müssen group


9
RENAME TABLE tb1 TO tb2;

tb1 - aktueller Tabellenname. tb2 - der Name, den Ihre Tabelle heißen soll.


8

Laut MySQL-Dokumenten : "Das Umbenennen von TEMPORARYTabellen RENAME TABLEfunktioniert nicht. Verwenden Sie ALTER TABLEstattdessen."

Dies ist also die portabelste Methode:

ALTER TABLE `old_name` RENAME `new_name`;

6

Probieren Sie eines davon aus

RENAME TABLE `group` TO `member`;

oder

ALTER TABLE `group` RENAME `member`;

2

Für die Mysql 5.6.18Verwendung der folgenden Befehl ein

ALTER TABLE `old_table` RENAME TO `new_table`

Auch wenn der Fehler ".... in der Nähe von RENAME TO ..." angezeigt wird, entfernen Sie das Häkchen `


1

Das Ausführen des Alter - Befehl

1.Klicken Sie oben auf die Registerkarte SQL .

2. Geben Sie im Textfeld den folgenden Befehl ein: ALTER TABLE exampletable RENAME TO new_table_name;

3.Klicken Sie auf die Schaltfläche Los.

Quelle: https://my.bluehost.com/hosting/help/2158


1

Sie können verwenden

RENAME TABLE `group` TO `member`;

Verwenden Sie das Zurück-Häkchen (`) anstelle des einfachen Anführungszeichens (').


-1

Ohne Angabe des Datenbanknamens kann die Tabelle in meinem Fall nicht umbenannt werden. Ich habe den folgenden Befehl befolgt, um die Tabelle umzubenennen.

RENAME TABLE current_db.tbl_name TO current_db.tbl_name;

-6

Klicken Sie mit der rechten Maustaste auf Ansicht> Neue Abfrage

Und geben Sie Folgendes ein: EXEC sp_rename 'Table', 'NewName'

Klicken Sie dann oben links auf der Seite auf die Schaltfläche Ausführen.


MySQL nicht Transact SQL
— Adam Joseph Looze
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.