Insert von anderer Tabelle mit gleichen Auto-IDs

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Insert von anderer Tabelle mit gleichen Auto-IDs

    Hallo, ich hätte da mal ein Problem beim mergen von zwei Tabellen.

    Es geht um eine mySQL-Tabelle in der Aktionen protokolliert werden. Ich habe mit einer Test-Tabelle gearbeitet und eine Live-Tabelle. Dummerweise haben einige Bereiche der Website in die Test-Tabelle geschrieben.
    Nun möchte ich beide Tabellen zusammenfügen, diese haben aber eindeutige IDs.
    Ich will mir jetzt den Weg über einen PHP-Scrip sparen und frage, ob es über mySQL einen Weg gibt, die Tabellen zusammen zu packen - die IDs sind dabei uninteressant und können einfach fortlaufend neue Werte bekommen.

    Ich habe es schon hierüber versucht:
    insert into db1.action_log select * FROM db2.action_log

    Allerdings meckert dan der phpMyAdmin, dass die IDs bereits vorhanden sind.
    Kann man den Befehl irgendwie erweitern, dass die IDs ignoriert werden?

    Danke

  • #2
    Gib einfach an welche Spalten du übernehmen willst - in diesem Fall alle außer der ID-Spalte.

    INSERT INTO tbl_name (col_name, ...) SELECT col_name, ...

    Falls noch andere Keys das Eintragen verhindern, musst du entweder "INSERT IGNORE ..." oder "... ON DUPLICATE KEY UPDATE ..." verwenden.

    Kommentar


    • #3
      Super danke. Das mit den einzelnen Feld-Namen hatte ich nur beim Select-Statement angegeben - klar dass ich ja auch bei Insert sagen muss, welche Felder das betrifft.

      Besten Dank.

      Kommentar

      Lädt...
      X