ChiChi: mySQL-Tabelle in neue Tabelle schreiben

Hallo,

ich will eine komplette Kundendatenbank (adressen) mit den Feldnamen

  • name
  • kundennummer
  • email
  • 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.

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

  1. Hello,

    ich will eine komplette Kundendatenbank (adressen) mit den Feldnamen

    • name
    • kundennummer
    • email
    • 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

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
  2. 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.