phpbar.de logo

Mailinglisten-Archive

RE: Reihenfolge von Tabellenspalten nachtr�gich �ndern

RE: Reihenfolge von Tabellenspalten nachtr�gich �ndern

Sandor Wonschik Sandor.Wonschik at arvato-mobile.de
Die Jul 12 13:07:33 CEST 2005


Hi

Tim Hildebrandt schrieb:
>bedeutet halt mehr Arbeit, da ich die Tabelle per Script in eine neue �berf�hren lassen kann
Ich hoffe mal, Du hast nicht daran gedacht, die Daten zeilenweise auszulesen und in die neue Tabelle zu inserten. ;-)

wie Sebastian schon meinte, ist ALTER TABLE eine bessere L�sung:
>From MySQL 4.0.1 on, you can also use FIRST and AFTER in CHANGE or MODIFY operations.
ALTER TABLE `table` MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]

Die column_definition musst Du >>exakt<< von der Originaltabelle nehmen, weil Du sonst Deinen Felddatentyp �nderst. 
Beispiel:

ALTER TABLE DeineTabelle MODIFY 
ID int(11) NOT NULL auto_increment
FIRST



F�r �ltere Db-Versionen als 4.0.1 kann man das Problem so erledigen:
(funktioniert bei neuen Versionen nat�rlich auch ;-)

- eine leere Tabelle mit der gew�nschten Tabellenstruktur anlegen
  (Id-Feld nach vorne)

- INSERT INTO DeineTabelleNeu (Feld1,Feld2,Feld3,Feld4) SELECT Feld1,Feld2,Feld3,Feld4 FROM DeineTabelle;

- ALTER TABLE DeineTabelle RENAME DeineTabelleAlt;
  ALTER TABLE DeineTabelleNeu RENAME DeineTabelle;


Viele Gr��e
:-) Sandor


-- 
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 


php::bar PHP Wiki   -   Listenarchive