In dieser Lektion wird davon ausgegangen, dass Sie bereits alle vorherigen Lektionen abgeschlossen haben. Siehe Lektion 1: Einrichten einer XML-Datenquelle.
In dieser Lektion fügen Sie Skripten zu Ihrer konsolidierten Datenbank für die SQL-Zeilenbehandlung und die direkte Zeilenbehandlung hinzu.
Mit der SQL-Zeilenbehandlung können Sie entfernte Daten mit Tabellen in Ihrer konsolidierten MobiLink-Datenbank synchronisieren. SQL-basierte Skripten legen Folgendes fest:
Wie Upload-Daten von einem MobiLink-Client in die konsolidierte Datenbank übernommen werden
Welche Daten von der konsolidierten Datenbank heruntergeladen werden
In dieser Lektion schreiben Sie Synchronisationsskripten für die folgenden SQL-basierten Upload- und Download-Ereignisse:
upload_insert Dieses Ereignis definiert, wie neue Bestellungen aus einer entfernten Clientdatenbank in die konsolidierte Datenbank übernommen werden.
download_cursor Dieses Ereignis definiert die Bestellungen, die auf entfernte Clients heruntergeladen werden sollen.
download_delete_cursor Dieses Ereignis ist erforderlich, wenn Sie Synchronisationsskripten verwenden, die nicht nur einen reinen Upload ausführen. Der MobiLink-Server wird konfiguriert, dieses Ereignis für diese praktische Einführung zu ignorieren.
Sie fügen mithilfe der direkten Zeilenbehandlung spezielle Verarbeitungsschritte zu einem SQL-basierten Synchronisationssystem hinzu. In dieser Lektion registrieren Sie Methodennamen, die den Ereignissen handle_UploadData, download_cursor und download_delete_cursor entsprechen. Sie erstellen Ihre eigene Java -Klasse in Lektion 5: Erstellen einer Java-Klasse mit direkter Zeilenbehandlung in MobiLink.
Verbinden Sie sich über Interactive SQL mit Ihrer konsolidierten Datenbank, falls dies nicht schon geschehen ist.
Führen Sie den folgenden Befehl aus:
dbisql -c "DSN=mlxml_db" |
Verwenden Sie die gespeicherte Prozedur ml_add_table_script, um SQL-basierte Tabellenskripten für die Ereignisse upload_insert, download_cursor und download_delete_cursor hinzuzufügen.
Führen Sie die folgende Anweisung in Interactive SQL aus. Das upload_insert-Skript fügt order_id, product_id, quantity und order_status in die konsolidierte MobiLink-Datenbank ein. Das download_cursor-Skript verwendet eine Filterung auf Zeitstempelbasis für den Download aktualisierter Zeilen auf entfernte Clients.
CALL ml_add_table_script( 'default', 'RemoteOrders', 'upload_insert', 'INSERT INTO RemoteOrders( order_id, product_id, quantity, order_status) VALUES( {ml r.order_id}, {ml r.product_id}, {ml r.quantity}, {ml r.order_status} )' ); CALL ml_add_table_script( 'default', 'RemoteOrders', 'download_cursor', 'SELECT order_id, product_id, quantity, order_status FROM RemoteOrders WHERE last_modified >= {ml s.last_table_download}'); CALL ml_add_table_script( 'default', 'RemoteOrders', 'download_delete_cursor', '--{ml_ignore}'); COMMIT; |
Registrieren Sie die Java -Methode für das Ereignis handle_UploadData.
Führen Sie die folgende SQL-Anweisung in Interactive SQL aus:
CALL ml_add_java_connection_script( 'default', 'handle_UploadData', 'MobiLinkOrders.GetUpload' ); |
Interactive SQL registriert die GetUpload-Methode für das handle_UploadData-Ereignis. Sie erstellen die GetUpload-Methode, die eingefügte Daten aus der OrderComments-Tabelle in der MobiLink-Clientdatenbank abruft, in einer späteren Lektion.
Registrieren Sie die Ereignisse download_cursor und download_delete_cursor.
Führen Sie hierzu die folgende SQL-Anweisung in Interactive SQL aus:
CALL ml_add_table_script( 'default', 'OrderComments', 'download_cursor', '--{ml_ignore}'); CALL ml_add_table_script( 'default', 'OrderComments', 'download_delete_cursor', '--{ml_ignore}'); |
Die Ereignisse download_cursor und download_delete_cursor müssen für die OrderComments-Tabelle registriert werden, wenn Sie Skripten verwenden, weil die Synchronisation in beiden Richtungen erfolgt und nicht nur ein reiner Upload ist. Siehe Erforderliche Skripten.
Schreiben Sie Ihre Änderungen fest.
Führen Sie die folgende SQL-Anweisung in Interactive SQL aus:
COMMIT; |
Schließen Sie Interactive SQL.
Fortfahren mit Lektion 5: Erstellen einer Java-Klasse mit direkter Zeilenbehandlung in MobiLink.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |