phpbar.de logo

Mailinglisten-Archive

[php] Probleme mit MERGE

[php] Probleme mit MERGE

Sebastian Tobias Mendel genannt Mendelsohn lists at sebastianmendel.de
Mit Okt 1 13:40:01 CEST 2003


>>>UPDATE table SET meinungs_id = meinungs_id + 3456, parent = parent
>>
>>Kann ich ein Update auf Auto-Wert Feld machen??
> 
> 
> ich war auch davon ausgegangen, dass es nicht geht, zumal es aus meiner Sicht
> keinen Sinn macht, autoincrement-Felder zu verwenden, um MySQL dann doch
> manuell dazwischen zu funken. :-)

ja es geht!


> Trotzdem ist es aber ein Versuch wert. Da mir auch der theoretische Hintergrund
> zur Beantwortung Deiner Frage fehlt, wuerde ich sagen: Einfach ausprobieren.
> ;-)
> 
> Sebastians Weg zur Zusammenfuehrung Deiner Daten scheint mir naemlich etwas
> einfacher, sollte er mit autoincrement-Feldern funktionieren. Du musst nur eins
> beachten:
> 
> Wenn Tabelle 1 meinungsids von 1-1000 hat und Tabelle 2 von 1-3000, dann knallt
> es, wenn Du die Werte in Tabelle 2 von vorne nach hinten erhoehst, weil
> natuerlich 1+1000 = 1001 schon vorhanden ist. D.h. Du muesstest die meinungsids
> in Tabelle 2 dann natuerlich von hinten durchlaufen, damit die 1001 schon auf
> die 2001 verschoben ist, wenn die 1 auf die 1001 verschoben wird.

achso, hatte ich vergessen zu sagen, der PRIMARY KEY ist natürlich 
vorher zu löschen und durch einen normalen INDEX zu ersetzen


> Die Frage ist allerdings dann, was das autoincrement-Feld der Zieltabelle aus
> Deinen meinungsids macht... Kann ich leider auch nicht beantworten.

in Tablle1 natürlich auch das PRIMARY KEY durch einen normalen INDEX 
ersetzen und dann einfach INSERT INTO Tabelle1 SELECT * FROM tabelle2


am ende den INDEX wieder in nen PRIMARY KEY wandeln, fertsch!

-- 
Sebastian Mendel

www.sebastianmendel.de
www.tekkno4u.de
www.nofetish.com


php::bar PHP Wiki   -   Listenarchive