Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#14

AW: Umsetzung einer Datensynchronisierung zwischen zwei Datenbanken

  Alt 27. Apr 2016, 21:10
@BUG

Es gibt Stammdaten (Alice, Bob), Bewegungsdaten (5 Punkte von Alice nach Bob, 20 Punkte an Bob) und dann die kumulierten Daten (Saldo für Alice, Bob).

Die Stammdaten und Bewegungsdaten werden zwischen den Systemen ausgetauscht. Die kumulierten Werte bildet jedes System selber.

Nur so zum Verständnis, ein Update sieht dann z.B. so aus
Delphi-Quellcode:
Query.SQL.Text := 'UPDATE person SET version = version+1, deleted = :deleted, name = :name WHERE id=:id AND version = :version';
Query.ParamByName('id').Value := aPerson.Id;
Query.ParamByName('version').Value := aPerson.Version;
Query.ParamByName('deleted').Value := aPerson.Deleted;
Query.ParamByName('name').Value := aPerson.Name;

Query.ExecSQL;

if Query.RowsAffected = 0 then
  raise EConcurrencyException.Create('Datensatz wurde schon vorher geändert');
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)

Geändert von Sir Rufo (27. Apr 2016 um 21:22 Uhr)
  Mit Zitat antworten Zitat