This lesson assumes you have completed all preceding lessons. See Lesson 1: Setting up the consolidated database.
In this lesson, you generate a database schema, which includes a Dealer table, a non_sync_request table, a download_cursor synchronization script. This database schema satisfies the requirements for generating push requests.
Set up the database schemaClick Start » Programs » SQL Anywhere 12 » Administration Tools » Sybase Central.
Perform the following tasks to connect to the consolidated database:
Click Connections » Connect with SQL Anywhere 12.
From the Action dropdown list, choose Connect with an ODBC Data Source.
Click ODBC Data Source Name, and click Browse.
Select SIS_CarDealer_LP_DBLSN_CONDB and then click OK.
Click Connect.
Connect to your database using Interactive SQL.
You can start Interactive SQL from Sybase Central or at a command prompt.
To start Interactive SQL from Sybase Central, right-click the SIS_CarDealer_LP_DBLSN_CONDB - DBA database and click Open Interactive SQL.
To start Interactive SQL at a command prompt, run the following command:
dbisql -c "dsn=SIS_CarDealer_LP_DBLSN_CONDB" |
Execute the following SQL statements to create and set up the Dealer and non_sync_request tables:
CREATE TABLE Dealer (
name VARCHAR(10) NOT NULL PRIMARY KEY,
rating VARCHAR(5),
last_modified TIMESTAMP DEFAULT TIMESTAMP
)
CREATE TABLE non_sync_request(
poll_key VARCHAR(128)
) |
Insert data into the Dealer table using the following statements:
INSERT INTO Dealer(name, rating) VALUES ('Audi', 'a');
INSERT INTO Dealer(name, rating) VALUES ('Buick', 'b');
INSERT INTO Dealer(name, rating) VALUES ('Chrysler', 'c');
INSERT INTO Dealer(name, rating) VALUES ('Dodge', 'd');
INSERT INTO Dealer(name, rating) VALUES ('Eagle', 'e');
INSERT INTO Dealer(name, rating) VALUES ('Ford', 'f');
INSERT INTO Dealer(name, rating) VALUES ('Geo', 'g');
INSERT INTO Dealer(name, rating) VALUES ('Honda', 'h');
INSERT INTO Dealer(name, rating) VALUES ('Isuzu', 'I');
COMMIT; |
Execute the following SQL statement to create the MobiLink system tables and stored procedures. Replace C:\Program Files\SQL Anywhere 12\ with the location of your SQL Anywhere 12 installation.
READ "C:\Program Files\SQL Anywhere 12\MobiLink\setup\syncsa.sql" |
Run the following SQL script to specify a download_cursor synchronization script and record the synchronization state to the ml_sis_sync_state system table:
CALL ml_add_table_script(
'CarDealer',
'Dealer',
'download_cursor',
'SELECT * FROM Dealer WHERE last_modified >= ?'
);
CALL ml_add_connection_script(
'CarDealer',
'publication_nonblocking_download_ack',
'CALL ml_set_sis_sync_state(
{ml s.remote_id},
NULL,
{ml s.publication_name},
{ml s.username},
NULL,
{ml s.last_publication_download}
)'
);
CALL ml_add_table_script(
'CarDealer', 'Dealer', 'download_delete_cursor', '--{ml_ignore}'
);
COMMIT; |
This script sets the ml_sis_sync_state to record download-only synchronization. Recording the synchronization state allows you to reference the ml_sis_sync_state system table from the request_cursor event. You specify the request_cursor event in the next lesson.
Close Interactive SQL.
Proceed to Lesson 3: Creating a MobiLink project.
See also![]() |
Discuss this page in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |