Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi Synchronisation von Daten: Wie macht das Access? (https://www.delphipraxis.net/82816-synchronisation-von-daten-wie-macht-das-access.html)

alzaimar 20. Dez 2006 07:37


Synchronisation von Daten: Wie macht das Access?
 
Hi!

Wenn eine Access-Anwendung auf mehreren Clients läuft, dann werden Änderungen am Datensatz sofort auf allen anderen Clients sichtbar (synchronisation).

Meine Frage: Wie machen die das? Weiss das jemand? Ich breche mir gerade einen mit TCP ab, und das funktioniert auch, aber ich frage mich, ob es noch einfacher, besser, schneller oder sonstwas geht?

Für sachdienliche Hinweise, die zur Ergreifung des Problems führen, ist eine Belohnung von drei :thumb: ausgelobt. :mrgreen:

SirThornberry 20. Dez 2006 08:22

Re: Synchronisation von Daten: Wie macht das Access?
 
wie es konkret bei Access aussieht weiß ich natürlich nicht. Aber da es auf Dateibasis beruht könnte ich mir vorstellen das die Datei auf Änderungen überwacht wird und dann geschaut wird was dazu kam bzw. geändert wurde.

marabu 20. Dez 2006 08:23

Re: Synchronisation von Daten: Wie macht das Access?
 
Hi alzaimar,

das von dir beobachtete Verhalten könnte an den sogenannten Dynasets liegen - Recordsets mit eingebautem Fetch-On-Demand. Die werden grundsätzlich dann verwendet, wenn eine Query an eine Form gebunden wird. Allerdings gibt es da ein konfigurierbares Refresh Interval mit einem Default von 60 sec - "sofort" ist was anderes, oder?

Freundliche Grüße

alzaimar 20. Dez 2006 08:37

Re: Synchronisation von Daten: Wie macht das Access?
 
Hi marabu, hi Thornberry.

Die Änderungen kommen *sofort*.

Ich glaube auch nicht, das es etwas mit einem ShellNotify zu tun hat, denn die Daten liegen ja im Netz und soweit ich weiss, klappt das ShellNotify nicht bei Netzlaufwerken.

Zur Info: Jeder Client liest eigentlich die gesamte DB in den lokalen Speicher, jedenfalls scheint das so zu sein, denn unser Kunde muss seine Client-PC alle paar Monate mit mehr RAM ausstatten... Deswegen ist Access auch so sauschnell.. na ja, jedenfalls will er unbedingt, das wir dieses Verhalten über eine C/S Lösung mit MSSQL als Backend abbilden... Kniffelig.

Derzeit haben wir es so gelöst, das die Mittelschicht (Tomcat) an alle Clients TCP-Nachrichten verschickt. Das klappt eigentlich, aber ich wollte wissen, wie Access das denn nun genau macht...

Danke und präventiv ein Frohes Fest! :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz