Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.0 (Deutsch) » MobiLink - Clientadministration » SQL Anywhere-Clients für MobiLink » Ereignis-Hooks für SQL Anywhere-Clients

 

Einführung in dbmlsync-Hooks

Der SQL Anywhere-Synchronisationsclient dbmlsync bietet eine Reihe von Ereignis-Hooks, mit denen Sie den Synchronisationsprozess anpassen können. Wenn ein Hook implementiert wurde, wird er zu einem bestimmten Zeitpunkt während des Synchronisationsprozesses aufgerufen.

Sie implementieren einen Ereignis-Hook, indem Sie eine gespeicherte SQL-Prozedur mit einem bestimmten Namen erstellen. Die meisten gespeicherten Prozeduren eines Ereignis-Hooks werden auf derselben Verbindung wie die Synchronisation selbst ausgeführt.

Mit Ereignis-Hooks können Sie Synchronisationsereignisse protokollieren und verarbeiten. Sie können beispielsweise Synchronisationen basierend auf logischen Ereignissen planen, fehlgeschlagene Verbindungen erneut aufbauen oder Fehler und Verletzungen der referenziellen Integrität verarbeiten.

Außerdem können Sie die Ereignis-Hooks auch verwenden, um Teilmengen von Daten zu synchronisieren, die in einer Publikation nicht problemlos definiert werden können. Zum Beispiel können Sie Daten in einer temporären Tabelle synchronisieren, indem Sie eine Hook-Prozedur schreiben, die vor der Synchronisation Daten aus der temporären Tabelle in eine permanente Tabelle kopiert, und eine andere, die die Daten danach wieder zurückkopiert.

Achtung

Die Integrität des Synchronisationsprozesses basiert auf einer Folge von integrierten Transaktionen. Sie dürfen innerhalb Ihrer Hook-Prozeduren Transaktionen nicht implizit oder explizit festschreiben bzw. zurücksetzen.

Ändern Sie eine beliebige Verbindungseinstellung in einem Hook, müssen Sie den vorherigen Wert der Einstellung wiederherstellen, bevor der Hook endet. Andernfalls kann es zu unerwarteten Ergebnissen kommen.

 dbmlsync-Schnittstellen

Hook-Sequenz bei der Synchronisation
Hook-Prozeduren verwenden