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

SQL Anywhere 12.0.0 (中文) » MobiLink - 入门 » MobiLink 教程 » 教程:直接行处理简介

 

第 6 课:建立 MobiLink 客户端数据库

在本课中,您将针对统一数据库和 MobiLink 客户端使用 SQL Anywhere 数据库。用于教程目的时,MobiLink 客户端、统一数据库和 MobiLink 服务器均驻留在同一台计算机上。

若要建立 MobiLink 客户端数据库,请创建 RemoteOrders 和 OrderComments 表。RemoteOrders 表对应于统一数据库中的 RemoteOrders 表。MobiLink 服务器使用基于 SQL 的脚本与远程订单进行同步。OrderComments 表仅在客户端数据库上使用。MobiLink 服务器使用特殊事件处理 OrderComments 表。

在创建这些表后,可在客户端数据库上创建同步用户、同步发布和同步预订。发布用于标识远程数据库上要同步的表和列。这些表和列称为项目。同步预订会为 MobiLink 用户预订发布。

 ♦  建立 MobiLink 客户端数据库
  1. 使用 dbinit 命令行实用程序创建 MobiLink 客户端数据库。

    运行以下命令:

    dbinit -i -k remote1

    -i 和 -k 选项分别忽略 jConnect 支持和 Watcom SQL 兼容性视图。

  2. 使用 dbeng12 命令行实用程序启动 MobiLink 客户端数据库。

    运行以下命令:

    dbeng12 remote1
  3. 使用 Interactive SQL 连接到 MobiLink 客户端数据库。

    运行以下命令:

    dbisql -c "server=remote1;uid=DBA;pwd=sql"
  4. 创建 RemoteOrders 表。

    在 Interactive SQL 中运行以下 SQL 脚本:

    CREATE TABLE RemoteOrders (
        order_id           INTEGER NOT NULL,
        product_id         INTEGER NOT NULL,
        quantity           INTEGER,
        order_status       VARCHAR(10) DEFAULT 'new',
        PRIMARY KEY(order_id)
    )
  5. 创建 OrderComments 表。

    在 Interactive SQL 中运行以下 SQL 脚本:

    CREATE TABLE OrderComments (
        comment_id         INTEGER NOT NULL,
        order_id           INTEGER NOT NULL,
        order_comment      VARCHAR(255),
        PRIMARY KEY(comment_id),
        FOREIGN KEY(order_id) REFERENCES RemoteOrders(order_id)
    )
  6. 创建 MobiLink 同步用户、同步发布和同步预订。

    在 Interactive SQL 中运行以下 SQL 脚本:

    CREATE SYNCHRONIZATION USER ml_sales1;
    CREATE PUBLICATION order_publ (TABLE RemoteOrders, TABLE OrderComments);
    CREATE SYNCHRONIZATION SUBSCRIPTION TO order_publ FOR ml_sales1
     TYPE TCPIP ADDRESS 'host=localhost'
    注意

    使用 CREATE SYNCHRONIZATION SUBSCRIPTION 语句中的 TYPE 子句和 ADDRESS 子句指定如何连接到 MobiLink 服务器。

    可以使用发布来确定同步哪些数据。在本例中指定整个 RemoteOrders 和 OrderComments 表。

在 Interactive SQL 中为下一课保持连接。

 进一步阅读