2012-05-23 2 views
33

Ich möchte die Spaltenpositionen meiner Datenbanktabelle ändern, ohne Daten zu verlieren.Wie ändere ich die Spaltenposition der MySql-Tabelle, ohne die Spaltendaten zu verlieren?

Zum Beispiel:

Aktuelle Tabelle:

+----+------+-------+----------+ 
| id | name | email | password | 
+----+------+-------+----------+ 

zu

+----+----------+------+-------+ 
| id | password | name | email | 
+----+----------+------+-------+ 
+4

Warum ist es matt? ter? –

+5

Was für ein Kommentar 'Warum ist es wichtig'? Weil manche Leute' SELECT * 'benutzen und dieses vom Array in eine Tabelle konvertieren? –

+0

@Bondye Der einzige Grund, die Reihenfolge der Spalten zu ändern, besteht darin, sie in eine Reihenfolge zu bringen, die benutzerfreundlicher ist, um gelesen zu werden. Die Veränderung, die er braucht, macht das nicht wirklich, es ist im Grunde das Gleiche. Und Abfragen mit 'SELECT *' sind bereits ein Zeichen für schlechtes SQL. –

Antwort

65

es so versuchen:

ALTER TABLE table_name MODIFY password varchar(20) AFTER id

+0

hast du es überprüft läuft? – Addicted

+0

Um ehrlich zu sein habe ich das nicht überprüft. Aber ich werde arbeiten. – Hearaman

+0

Danke, es funktioniert gut. –

8

Hearamans Antwort ist korrekt; Aber wenn Sie phpMyAdmin verwenden, gibt es eine visuelle und praktische Möglichkeit, dies zu tun.

  1. Öffnen Sie die Tabelle
  2. Wählen Sie die "Struktur" Tab
  3. Klicken Sie auf "verschieben Spalten"
  4. Drag & Drop-Spaltennamen

Move columns link, middle of the Structure tabMove columns popup

+0

Wie zum Teufel finden Sie eine Option "Spalte verschieben". –

+0

@SouravSarkar sollte genau unter der Tabelle sein, die die Struktur zeigt. Versionsunterschiede können jedoch zutreffen. –

+0

In welcher @version hast du die Option gesehen? –

Verwandte Themen