Mailinglisten-Archive |
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