sp_registercustomresolver (Transact-SQL)

注册可在合并复制同步进程中调用的业务逻辑处理程序或基于 COM 的自定义冲突解决程序。此存储过程在分发服务器上执行。

主题链接图标Transact-SQL 语法约定

语法

sp_registercustomresolver [ @article_resolver = ] 'article_resolver' 
    [ , [ @resolver_clsid = ] 'resolver_clsid' ]
    [ , [ @is_dotnet_assembly = ] 'is_dotnet_assembly' ]
    [ , [ @dotnet_assembly_name = ] 'dotnet_assembly_name' ]
    [ , [ @dotnet_class_name = ] 'dotnet_class_name' ]

参数

  • [ @article_resolver = ] 'article_resolver'
    指定正在注册的自定义业务逻辑的友好名称。article_resolver 的数据类型为 nvarchar(255),没有默认值。
  • [ @resolver_clsid= ] 'resolver_clsid'
    指定正在注册的 COM 对象的 CLSID 值。自定义业务逻辑 resolver_clsid 的数据类型为 nvarchar(50),默认值为 NULL。在注册业务逻辑处理程序程序集时,必须将该参数设置为有效的 CLSID,或将其设置为 NULL。
  • [ @is_dotnet_assembly= ] 'is_dotnet_assembly'
    指定正在注册的自定义业务逻辑的类型。is_dotnet_assembly 的数据类型为 nvarchar(50),默认值为 FALSE。true 指示正在注册的自定义业务逻辑是一个业务逻辑处理程序程序集;false 指示它是一个 COM 组件。
  • [ @dotnet_assembly_name= ] 'dotnet_assembly_name'
    实现业务逻辑处理程序的程序集的名称。dotnet_assembly_name 是的数据类型为 nvarchar(255),默认值为 NULL。如果该程序集未部署到与合并代理可执行文件相同的目录中、与同步启动合并代理的应用程序相同的目录中或全局程序集缓存 (GAC) 中,则必须指定该程序集的完整路径。
  • [ @dotnet_class_name= ] 'dotnet_class_name'
    实现业务逻辑处理程序时优先级高于 BusinessLogicModule 的类的名称。该名称应按 Namespace.Classname 格式指定。dotnet_class_name 的数据类型为 nvarchar(255),默认值为 NULL。

返回代码值

0(成功)或 1(失败)

备注

sp_registercustomresolver 用于合并复制。

权限

只有 sysadmin 固定服务器角色或 db_owner 固定数据库角色的成员才能执行 sp_registercustomresolver

请参阅

参考

sp_lookupcustomresolver (Transact-SQL)
sp_unregistercustomresolver (Transact-SQL)
系统存储过程 (Transact-SQL)

其他资源

How to: Implement a Business Logic Handler for a Merge Article (Replication Programming)
How to: Implement a COM-Based Custom Conflict Resolver for a Merge Article (Replication Programming)

帮助和信息

获取 SQL Server 2005 帮助