Mailinglisten-Archive |
Hallo Burkhard, > ich möchte Geodaten vom lokalen Server umsetzen auf den liveserver. > > Lese aus der Datenbank ALK_GIS alle Tabellen und speichere > sie unter gleichem Namen in der Datenbank "futurefarm" ab. > Dabei soll kontrolliert werden ob die gleiche ObjNr > (Datenfeld) bereits eingeschrieben wurde, ist dies der Fall > soll ein Update durchgeführt werden ansonsten neu hinzugefügt werden. Für solch einen Fall, würd ich zu Ids greifen, die nichts mit dem Auto_increment zu tun haben. Generiere für alle Einträge in der Datenbank einen eindeutigen md5 Schlüssel (einzwei felder aus den daten zusammen mit irgendeinem anderen eindeutigen Wert), diesen Schlüssel fügst du in die Datenbank mit ein und änderst ihn nie wieder. D.h. wenn dieser Schlüssel in der Live-DB liegt, machst du nen Update und wenn nicht nen insert. (Wichtig ist nur, daß du dafür sorge trägst, daß der md5-Schlüssel wirklich eindeutig ist. (Das prinzip ist ähnlich dem der GUIDs von mickeysoft.) Über den md5 Schlüssel kann man dann auch prima nen index legen und er ist dann noch schnell (unter mysql mit eingeschaltetem Query Cache, mit 1,9 Millionen Datensätzen). > Zeitgleich soll eine Tabelle komplett angelegt werden, indem > die übertragenen Datensätze Kunden zugeordnet werden. > Könnte ja jetzt jedes Feld mühsam auslesen und umlesen. > Denke da gibt es sicher elegantere Möglichkeiten ich denke das kannst du mit wirklich eindeutigen Ids dann auch hinbekommen. Gruß Marc
php::bar PHP Wiki - Listenarchive