In dieser Lektion fügen Sie Ihrer Anwendung Synchronisationscode hinzu, starten den MobiLink-Server und führen Ihre Anwendung aus, um die Synchronisation mit der konsolidierten Datenbank durchzuführen.
Voraussetzungen
In dieser Lektion wird davon ausgegangen, dass Sie bereits alle vorherigen Lektionen abgeschlossen haben. Siehe Lektion 1: Erstellen und Verbinden mit einer Datenbank.
Kontext und Bemerkungen
Die in den vorhergehenden Lektionen von Ihnen erstellte UltraLite-Datenbank wird mit der UltraLite 16-Beispieldatenbank synchronisiert. Die UltraLite 16-Beispieldatenbank verfügt über die Tabelle ULCustomer, deren Spalten diejenigen aus der customer-Tabelle Ihrer lokalen UltraLite-Datenbank umfassen.
Fügen Sie nachstehende Methode der Datei customer.cpp hinzu. Diese Methode führt die folgenden Aufgaben aus:
Aktiviert die TCP/IP-Kommunikation durch Aufruf von EnableTcpipSynchronization. Die Synchronisation kann auch über HTTP, HTTPS und TLS durchgeführt werden.
Sie definiert die Skriptversion. Die MobiLink-Synchronisation wird von Skripten in der konsolidierten Datenbank gesteuert. Die Skriptversion legt fest, welche Gruppe von Skripten verwendet werden soll.
Sie legt den MobiLink-Benutzernamen fest. Dieser Wert wird zur Authentifizierung auf dem MobiLink-Server verwendet. Sie unterscheidet sich von der Benutzer-ID der UltraLite-Datenbank. Sie können aber bei Ihren Anwendungen denselben Wert für die Benutzer-ID verwenden.
Setzt den download_only-Parameter auf TRUE. Standardmäßig ist die MobiLink-Synchronisation bidirektional. Diese Anwendung verwendet die reine Downloadsynchronisation, damit die Zeilen in Ihrer Tabelle nicht in die Beispieldatenbank geladen werden.
static bool do_sync( ULConnection * conn ) { ul_sync_info info; ul_stream_error * se = &info.stream_error; ULDatabaseManager::EnableTcpipSynchronization(); conn->InitSyncInfo( &info ); info.stream = "TCPIP"; info.version = "custdb 12.0"; info.user_name = "50"; info.download_only = true; if( !conn->Synchronize( &info ) ) { _tprintf( "Synchronization error \n" ); _tprintf( " stream_error_code is '%lu'\n", se->stream_error_code ); _tprintf( " system_error_code is '%ld'\n", se->system_error_code ); _tprintf( " error_string is '" ); _tprintf( "%s", se->error_string ); _tprintf( "'\n" ); return false; } return true; } |
Fügen Sie der main-Methode nach dem do_select-Methodenaufruf folgende Codezeile hinzu:
do_sync(conn); |
Kompilieren Sie Ihre Anwendung mit nmake.
Starten Sie den MobiLink-Server.
Führen Sie an der Eingabeaufforderung folgenden Befehl aus:
mlsrv16 -c "dsn=SQL Anywhere 16 CustDB;uid=ml_server;pwd=sql" -v -vr -vs -zu+ -o custdbASA.log |
Die Option -zu+ ermöglicht das automatische Hinzufügen von Benutzern. Die Option -v+ aktiviert die ausführliche Protokollierung aller Meldungen.
Führen Sie Ihre Anwendung aus, indem Sie an einer Eingabeaufforderung customer eingeben.
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2013, SAP AG oder ein SAP-Konzernunternehmen. - SAP Sybase SQL Anywhere 16.0 |