phpbar.de logo

Mailinglisten-Archive

RE: Reihenfolge von Tabellenspalten nachträgich ändern

RE: Reihenfolge von Tabellenspalten nachträgich ändern

Tim Hildebrandt TConnect at gmx.net
Die Jul 12 16:41:07 CEST 2005


Hallo zusammen,


> 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]

Ich hatte das MODIFY nicht geschrieben. Von daher hatte er mir ständig einen
Fehler ausgegeben. Jetzt müßte es klappen. Danke, das war dann für mich die
Lösung.


> 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

War bekannt. Danke dennoch.



> 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;

Da ich eine aktuelle Version habe, erübrigt sich das in dieser Form.


Danke Euch allen für die Hilfe.


Grüße Tim

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


php::bar PHP Wiki   -   Listenarchive