sp_registercustomresolver (Transact-SQL)

适用范围:SQL Server

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

Transact-SQL 语法约定

语法

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

参数

[ @article_resolver = ] N'article_resolver'

指定注册的自定义业务逻辑的友好名称。 @article_resolver为 nvarchar(255),没有默认值。

[ @resolver_clsid = ] N'resolver_clsid'

指定正在注册的 COM 对象的 CLSID 值。 @resolver_clsid为 nvarchar(50),默认值为 NULL. 此参数必须设置为有效的 CLSID,或者在注册业务逻辑处理程序程序集时设置为 NULL 该参数。

[ @is_dotnet_assembly = ] N'is_dotnet_assembly'

指定要注册的自定义业务逻辑的类型。 @is_dotnet_assembly为 nvarchar(10),默认值为 false.

  • true 指示要注册的自定义业务逻辑是业务逻辑处理程序程序集。
  • false 指示自定义业务逻辑是 COM 组件。

[ @dotnet_assembly_name = ] N'dotnet_assembly_name'

实现业务逻辑处理程序的程序集的名称。 @dotnet_assembly_namenvarchar(255),默认值为 NULL. 如果程序集未部署在与合并代理可执行文件相同的目录中、同步启动合并代理的应用程序所在的目录中,或全局程序集缓存(GAC)中,则必须指定程序集的完整路径。

[ @dotnet_class_name = ] N'dotnet_class_name'

重写 BusinessLogicModule 实现业务逻辑处理程序的类的名称。 @dotnet_class_namenvarchar(255),默认值为 NULL. 名称应以格式 <Namespace>.<Classname>指定。

返回代码值

0(成功)或 1(失败)。

注解

sp_registercustomresolver 用于合并复制。

权限

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