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

SQL Anywhere 12.0.1 » MobiLink - 入门 » MobiLink 教程 » 教程:将 MobiLink 用于 Oracle 10g 数据库

 

第 6 课:创建和修改同步模型

本课假定您已完成前面的所有课程。 请参见第 1 课:设计模式

在这一课,您将创建一个用于统一数据库的同步模型。[创建同步模型向导] 提供了在统一数据库和远程数据库之间设置同步的分步说明。

 ♦ 创建和修改同步模型
  1. 在 [欢迎] 页面上的 [您要给新同步模型指定什么名称] 字段中键入 sync_oracle,然后单击 [下一步]。

  2. 在 [主键需求] 页面上选中全部三个复选框。单击 [下一步]。

  3. 从列表中选择 [oracle_cons] 统一数据库,然后单击 [下一步]。

  4. 单击 [否,新建一个远程数据库模式],然后单击 [下一步]。

  5. 在 [新的远程数据库模式] 页面上的 [您要在远程数据库中使用哪些统一数据库表和列] 列表中选择下列表:

    • CUSTOMERS
    • ORDERS
    • ORDER_ITEMS
    • PRODUCT_INFORMATION
  6. 单击 [下一步]。

  7. 单击 [基于时间戳的下载],然后单击 [下一步]。

    基于时间戳的下载可以使所传送的数据量最小,因为此下载类型仅传输自上次下载后经过更新的数据。

  8. 在 [时间戳下载选项] 页面上,单击 [使用影子表来保存时间戳列],然后单击 [下一步]。

    最好选择使用影子表,因为这样不会对现有的表进行任何更改。

  9. 在 [下载删除] 页面上执行以下任务:

    1. 在 [是否要在远程数据库中删除那些在统一数据库中被删除的数据] 选项中,单击 []。

    2. 单击 [使用影子表来记录删除]。

      MobiLink 将在统一数据库中创建影子表,以执行需要同步的删除。

    3. 单击 [下一步]。

  10. 单击 [是,向每个远程数据库下载相同的数据],然后单击 [下一步]。

    在编辑同步模型时,通过使用自定义逻辑,可指定将特定数据下载到远程数据库的方式。

  11. 单击 [无冲突检测],然后单击 [下一步]。

    尽管本教程未指定任何冲突检测,但许多应用程序都需要进行冲突检测。

  12. 在 [发布、脚本版本和说明] 页面上执行以下任务:

    1. 在 [您要给此发布指定什么名称] 字段中,键入 sync_oracle_publication

    2. 在 [您要给此脚本版本指定什么名称] 字段中键入 sync_oracle_scriptversion

      发布是远程数据库上的对象,用于指定要同步的数据。MobiLink 服务器脚本定义了如何将远程数据库上载的数据应用到统一数据库,同时也对脚本版本组的脚本进行了定义。可以针对不同的应用程序使用不同的脚本版本,从而使您只需维护单一 MobiLink 服务器就可同时同步多个不同的应用程序。

    3. 单击 [完成]。

  13. 在 Sybase Central 中,单击 [视图] » [文件夹]。

  14. 在 Sybase Central 左窗格中 [MobiLink 12] 的下面,依次展开 [oracle_project]、[同步模型] 和 [sync_oracle]。

  15. 在同步模型中为各表设置同步数据的方向。

    在右窗格中,单击 [映射] 选项卡,然后在 [方向] 列中设置行,如下所示:

    • ORDERSORDER_ITEMS 表应设置为 [双向](既能上载又可下载)。
    • 其余表应设置为 [只下载到远程]。
  16. 如果出现一个窗口,提示您为全部所有者装载统一模式可能需要较长时间,则请选择为 HR 用户和 OE 用户装载数据库模式。

  17. 按远程 ID 过滤下载到远程数据库的行。

    1. 对于包含 ORDERS 表的行,将 [下载子集] 列更改为 [自定义]。

    2. 在右窗格底部,单击 [下载子集] 选项卡。

    3. 通过对 download_cursor 脚本的 WHERE 子句添加限制,可按唯一标识远程数据库的远程 ID 过滤行。

      在 [要在下载游标的 WHERE 子句中使用的 SQL 表达式] 字段中键入搜索条件。例如,以下 SQL 脚本可用于 ORDERS 表:

      OE.ORDERS.SALES_REP_ID = {ml s.remote_id}

      下载游标脚本指定了要从各个表中下载到远程数据库的行和列。上述搜索条件可确保仅下载有关一位销售代表(即标识符与数据库的远程 ID 相同的销售代表)的信息。

    4. 将 [删除子集] 列从 [相同] 更改为 []。

  18. 保存同步模型。

    选择 [文件] » [保存]。

    至此,同步模型创建完成,接下来您可以部署该模型。

  19. 前进至第 7 课:部署同步模型

 另请参见