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

SQL Anywhere 12.0.0 (中文) » SQL Remote » 创建 SQL Remote 系统 » 发布和项目

 

只发布表中的某些行

要创建一个只包含表中某些行的发布,必须编写一个仅与要发布的行匹配的搜索条件。请在搜索条件中使用以下子句之一:

  • SUBSCRIBE BY 子句   当发布的多个预订者接收表中的不同行时,则使用 SUBSCRIBE BY 子句。

    建议在 SQL Remote 系统需要大量预订时使用 SUBSCRIBE BY 子句。SUBSCRIBE BY 子句允许将多个预订与单个发布关联,而 WHERE 子句则不能。预订者将根据所提供表达式的值来接收行。

    使用 SUBSCRIBE BY 子句的发布更加紧凑,更易于理解,并且与维护若干个 WHERE 子句发布相比,具有更优越的性能。

    请参见使用 SUBSCRIBE BY 子句只发布某些行

  • WHERE 子句   使用 WHERE 子句在某个项目中加入行子集。包含此项目的发布的所有预订者都将收到满足 WHERE 子句的行。

    所有未发布的行都必须具有缺省值。否则,当远程数据库尝试从统一数据库中插入新行时,将发生错误。

    可将 WHERE 子句合并到项目中。

    数据库服务器必须将信息添加到事务日志,然后扫描事务日志以便发送消息,发送的消息数与发布的数目成正比。WHERE 子句不允许将多个预订与单个发布关联,而 SUBSCRIBE BY 子句则可以。

    请参见使用 WHERE 子句只发布某些行

 示例

使用 SUBSCRIBE BY 子句只发布某些行
使用 WHERE 子句只发布某些行