Wie man das Präfix aller Tabellen in mysql hinzufügt

8

Wie kann ich Präfix zu allen Tabellen in mysql mit Abfrage hinzufügen.

Zum Beispiel:

Ich muss " dr _ " in allen Tabellen hinzufügen, die in der mysql-Datenbank verfügbar sind.

    
Fero 01.11.2011, 18:08
quelle

4 Antworten

12

In diesem Beispiel erstelle ich eine Datenbank namens prefixdb mit 4 Tabellen:

%Vor%

Die Abfrage zum Generieren wäre

%Vor%

Ich führe es in der Befehlszeile aus:

%Vor%

Übergeben Sie das Ergebnis wie folgt an mysql:

%Vor%

Im Hinblick auf Ihre Frage, wenn Sie alle Tabellen umbenennen möchten, berühren Sie nicht die Datenbanken information_schema und mysql. Verwenden Sie stattdessen diese Abfrage:

%Vor%

Probieren Sie es aus !!!

    
RolandoMySQLDBA 01.11.2011 19:03
quelle
11

Führen Sie alle Abfragen aus, die Sie beim Ausführen dieser Abfrage erhalten:

%Vor%     
Abhay 01.11.2011 18:30
quelle
0

Um Rolando's ausgezeichnete und umfassende Antwort hinzuzufügen. Wenn Sie die RENAME-Abfragen ausführen, die von seiner SELECT CONCAT-Abfrage generiert wurden (ich habe phpMyAdmin verwendet und die Ausgabeabfragen einfach in die SQL-Box kopiert und auf Go geklickt), sollten Sie keine Probleme mit Fremdschlüsseleinschränkungen haben. Ich habe dies gerade in einer Testdatenbank in XAMPP getan, und alle Tabellen wurden in OK umbenannt, und die Beschränkungen blieben intakt. Das mag für SQL-Experten offensichtlich sein, aber vielleicht nicht so sehr für uns Amateure.

    
Fred Riley 22.01.2013 21:01
quelle
0

Fügen Sie allen Ihren Datenbanktabellen ein Präfix hinzu.

Angenommen, Ihre Datenbank hieß "my_database" und das Präfix, das Sie hinzufügen möchten, lautet "my_prefix", führen Sie die folgende Abfrage aus:

%Vor%

Ihre Ergebnismenge besteht aus einer Reihe von Abfragen, die Sie kopieren und in Ihren bevorzugten MySQL-Editor einfügen können (Sequel Pro, phpMyAdmin, was auch immer). Einfach einfügen und ausführen, und Sie sind fertig.

    
Ingo 07.02.2016 14:08
quelle

Tags und Links