Adaptive Server Enterprise 的命令参考
将表标记为用于 SQL Remote 复制。
sp_add_remote_table table_name,
[ resolve_procedure, ]
[ old_row_name, ]
[ remote_row_name ]
| 参数 | 说明 |
|---|---|
| table_name | 要标记为用于 SQL Remote 复制的表。 |
| resolve_procedure | 发生冲突时执行操作的存储过程的名称。 |
| old_row_name | 表的名称,该表包含发生冲突时表中的值。 |
| remote_row_name | 表的名称,该表包含在应用导致冲突的 UPDATE 语句时远程数据库中的值。 |
您必须拥有系统管理员身份才能执行此过程。
管理冲突.
在将数据库中的每个表包括在任何 SQL Remote 发布中之前,必须使用 sp_add_remote_table 将其标记为用于复制。在执行 sp_add_remote_table 之后,可以使用 sp_add_article 过程和 sp_add_article_col 过程将表添加到发布中。
sp_add_remote_table 过程调用 sp_setreplicate,后者将表标记为用于复制。这将通知 Adaptive Server Enterprise 将扩展信息记录到事务日志中。该信息包括行的整个前映像和后映像。
第一个参数是要标记为用于复制的表的名称。
剩余的三个参数是可选的。它们是自定义冲突解决方法才需要的对象名称。如果您要实施自定义冲突解决方法,则必须提供两个表的名称和一个存储过程。sp_add_remote_table 过程不检查冲突解决方法参数是否存在:您可以在将表标记为用于复制之前或之后创建这些参数。
这两个表必须具有与表 table_name 相同的列和数据类型。
下面的语句将 Customer 表标记为用于复制,并使用缺省的冲突解决方法:
exec sp_add_remote_table Customer
下面的语句将 Customer 表标记为用于复制,并使用名为 Customer_Conflict 的存储过程来解决冲突。旧行和远程行分别存储在名为 old_Customer 和 remote_Customer 的表中:
exec sp_add_remote_table Customer, Customer_Conflict, old_Customer, remote_Customer
SQL Anywhere Studio 9.0.2
版权所有 © 1989–2005 Sybase, Inc. 部分版权所有 © 2001–2005 iAnywhere Solutions, Inc. 保留所有权利。