Autor Beitrag
NightHawk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 18



BeitragVerfasst: Mi 23.06.04 01:50 
Hallo,

Ich würde gerne unsere lokale Datenbank, die auf unsere Bedürfnisse zugeschnitten ist, mit der globalen synchronisieren. Beide System sind z.Z. voneinander unabhängig und sollten es auch bleiben. Unser lokales System ist eine Access MDB mit ADO-Komponenten. Die externe Datenbank ist eine Oracle8 DB, auf die wir nur über Intranetoberfläche zugreifen können.

Ich würde nun gerne unsere lokalen Daten mit den globalen Daten synchronisieren, indem ich eine Aktualisierungsabfrage durchführe und unseren bestehenden Datensätze korrigiere. Weiß da jemand bescheid?

Thx,
NightHawk

_________________
Delphi - Die Sprache der Engel
mrbug
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 44

Win XP,Win 2000,Suse 9.0
D7 Ent. , K3 Ent.
BeitragVerfasst: Fr 02.07.04 08:37 
Datenreplikation?

_________________
HoffentlichbaldkeinAnfängermehrseier
fuser
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 23



BeitragVerfasst: Fr 02.07.04 12:40 
Hallo NightHawk
ADO-Komponenten heisst wohl kein TQuery.
Damit scheidet die Möglichkeit der heterogenen BDE-SQLs aus.
Sind sowieso langsam.

Dann bleibt wohl nur noch:
In Delphi aus einer DB Auslesen und in die andere 'rein...

Und welche Daten?

Eine Möglichkeit: ein Flag aus der Quelltabelle merkt sich ob der Datensatz übertragen wurde

Noch eine Möglichkeit: Ein Auto-Increment-Feld wird mit übertragen.
beim Ziel Max(Auto_Increment) abfragen und aus der Quelle die
Daten >Max auslesen

Wenn das in beide Richtungen geht wird das kompliziert.
Ohne Record-Locking kann es unvermeidbar zu Replikationsfehlern führen wenn
auf beiden Tabellen der gleiche Datensatz geändert wird.
Das muss dann entsprechend behandelt werden, z.B. den aktuelllsten nehmen...