Before running the setup script, you should be aware of the following requirements:
The database user that runs the setup script must be able to create tables, triggers, and stored procedures, so must have the db_owner role.
The database user who runs the setup script is expected to be the same one used to update the MobiLink system tables during synchronization. This user must be used to start the MobiLink server and to configure MobiLink applications. See Required permissions.
The RDBMS user that the MobiLink server uses to connect to the consolidated database must be able to use the MobiLink system tables, procedures, and so on, without any qualifiers (for example, SELECT * from ml_user). See MobiLink server system tables.
The MobiLink server login ID must have VIEW SERVER STATE permission. This permission can be granted using the following SQL statement within the master database of a Microsoft SQL server:
grant view server state to user_name |
The MobiLink server login ID must have SELECT permission on sys.databases.
To set up Microsoft SQL Server to work as a MobiLink consolidated database, you must run a setup procedure that adds MobiLink system tables, stored procedures, triggers, and views that are required for MobiLink synchronization. There are multiple ways you can do this:
Run the syncmss.sql setup script, located in install-dir\MobiLink\setup.
In the MobiLink 12 plug-in for Sybase Central, choose Folders from the View menu. Open your MobiLink project and expand Consolidated Databases. Right-click the database name and choose Check MobiLink System Setup. If your database requires setup, you are prompted to continue. If you want to use an existing MobiLink system setup, then your default_schema should be the schema of the MobiLink system setup.
When you use the Create Synchronization Model Wizard or Deploy Synchronization Model Wizard, the system setup is checked when you connect to your server database. If your database requires setup, you are prompted to continue.
You must set up an ODBC DSN for your SQL Server consolidated database using the ODBC driver that is provided with your SQL Server database. See:
Data type mapping The data types of columns must map correctly between your consolidated and remote database. For details, see Microsoft SQL Server data mapping.
CHAR columns In Microsoft SQL Server, CHAR data types are fixed length and blank-padded to the full length of the string. In MobiLink remote databases (SQL Anywhere or UltraLite) CHAR is the same as VARCHAR: values are not blank-padded to a fixed width. It is recommended that you use VARCHAR in the consolidated database rather than CHAR. If you must use CHAR, the mlsrv12 -b command line option can be used to remove trailing blanks from strings during synchronization. This option is important for string comparisons used to detect conflicts.
See -b mlsrv12 option.
SET NOCOUNT ON For Microsoft SQL Server, you should specify SET NOCOUNT ON as the first statement in all stored procedures or SQL batches executed via ODBC.
Procedure calls Microsoft SQL Server requires that procedure calls with parameters be written using the ODBC syntax:
{ CALL procedure_name( {ml param1}, {ml param2}, ... ) } |
Sample database uses computer columns The SQL Server AdventureWorks sample database contains computed columns. You cannot upload to a computed column. You can set the column to be download-only, or you can exclude the column from synchronization.
Implementing conflict detection in an upload_update script The behavior of the SQL Server NOCOUNT option means that the MobiLink server cannot accurately assess how many rows were changed by an upload data script. For SQL Server, you must perform conflict detection directly in the upload_update script by passing in both the old and the new row values. See upload_update table event.
Discuss this page in DocCommentXchange.
|
Copyright © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |