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

SQL Anywhere 12.0.1 » SQL Remote » 创建 SQL Remote 系统 » 发布和项目 » 只发布表中的某些行

 

使用 WHERE 子句只发布某些行

使用以下过程创建一个使用 WHERE 子句以包含表中所有列但仅包含某些行的发布。 有关使用 WHERE 子句及其替代子句 SUBSCRIBE BY 子句的信息,请参见只发布表中的某些行

 ♦ 使用 WHERE 子句创建发布 (Sybase Central)
  1. 使用 SQL Anywhere 12 插件以具有 DBA 权限的用户身份连接到统一数据库。

  2. 在左窗格中,单击 [发布] 文件夹。

  3. 单击 [文件] » [新建] » [发布]。

  4. 在 [您要给新发布指定什么名称] 字段中键入发布的名称。单击 [下一步]。

  5. 单击 [下一步]。

  6. 在 [可用表] 列表中,单击一个表。单击 [添加]。单击 [下一步]。

  7. 在 [可用列] 选项卡上,双击表的图标以展开 [可用列] 列表。单击想要发布的每个列,然后单击 [添加]。单击 [下一步]。

  8. 在 [指定 WHERE 子句] 页面上:

    1. 单击 [项目] 列表中的某个表。

    2. 将 WHERE 子句键入 [所选项目具有以下 WHERE 子句] 字段。

  9. 单击 [完成]。

 ♦ 使用 WHERE 子句创建发布 (SQL)
  1. 以具有 DBA 权限的用户身份连接到数据库。

  2. 执行使用 WHERE 子句的 CREATE PUBLICATION 语句,以包括想要包含在发布中的行。

    例如,以下语句将为在 Status 列中标记为 active 的客户创建一个发布 Customers 表的 ID、CompanyName、City、State 和 Country 列的发布。Status 列不会发布。

    CREATE PUBLICATION PubCustomers (
       TABLE Customers (
          ID,
          CompanyName,
          City,
          State,
          Country )
       WHERE Status = 'active'
    );

    以下语句将使两个雇员预订同一发布。Ann Taylor 和 Sam Singer 会收到相同的数据。

    CREATE SUBSCRIPTION
    TO PubCustomers 
    FOR Ann_Taylor;
    
    CREATE SUBSCRIPTION
    TO PubCustomers
    FOR Sam_Singer;

用户可以预订多个发布,也可以具有单个发布的多个预订。

 另请参见