mySQL-Tabelle in neue Tabelle schreiben
ChiChi
- datenbank
0 Tom0 Andreas Görtz
Hallo,
ich will eine komplette Kundendatenbank (adressen) mit den Feldnamen
in eine neue tabelle überführen (kunden)diesmal mit den Feldnamen
schreiben. Es sollen jeweils nur
so ich habe mir folgende überlegungen dazu gemacht:
mit einer seclect-anweisung hole ich alle datensätze aus der datenbank, lasse eine whileschleife durchlaufen, die mir dann den jeweiligen eintrag in die neue tabelle überführt.
frage: könnte das klappen? wenn ja, wie sieht dann die schleife aus?
Gibt es schneller oder bessere möglichkeiten der überführung? Evtl ein Tool? kann ich das mit phpMyAdmin machen? Wenn ja, wie?
Grüsse ChiChi
Hello,
ich will eine komplette Kundendatenbank (adressen) mit den Feldnamen
- name
- kundennummer
- telefon
- fax
in eine neue tabelle überführen (kunden)diesmal mit den Feldnamen
- kunde
- kunden_nr
schreiben. Es sollen jeweils nur
- name --> kunde
- kundennummer --> kunden_nr
überführt werden.
Dya< gibt es die Möglichkeit mit "create $table from..."
und auch die Möglichkeit mit
"insert into $newtable (kunde, kunden_nr) select kunde, kunden_nr from $oldtable"
Ich hoffe, dass ich mich jetzt nicht irgendwo mit der Syntax vertan habe
Liebe Grüße aus http://www.braunschweig.de
Tom
Hi,
so ich habe mir folgende überlegungen dazu gemacht:
mit einer seclect-anweisung hole ich alle datensätze aus der datenbank, lasse eine whileschleife durchlaufen, die mir dann den jeweiligen eintrag in die neue tabelle überführt.frage: könnte das klappen? wenn ja, wie sieht dann die schleife aus?
Gibt es schneller oder bessere möglichkeiten der überführung? Evtl ein Tool? kann ich das mit phpMyAdmin machen? Wenn ja, wie?
ja - das geht auf jeden Fall schneller und besser, siehe http://dev.mysql.com/doc/mysql/de/HANDLER.html, zweite Syntax. Das sieht dann so aus, dass du im INSERT-Statement statt 'VALUES (...,...)' ein SELECT-Statement angibst, also z.B.:
INSERT INTO tabelle1 (feld1,feld2)
SELECT
feld1,feld2
FROM
tabelle2
was dann alle Datensätze, die das SELECT aus tabelle2 zurückgibt in tabelle1 einfügt.
Gruß,
Andreas.