phpbar.de logo

Mailinglisten-Archive

[php] Umsetzen einer mysql DB

[php] Umsetzen einer mysql DB

Marc Ende me at twenty47.tv
Sam Feb 21 12:59:06 CET 2004


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