Transact-SQL 参考

sp_changesubscriber

更改订阅服务器的选项。更新针对此发布服务器的订阅服务器的任何分发任务。此存储过程写入分发数据库中的 MSsubscriber_info 表。此存储过程在发布服务器的发布数据库上执行。

语法

sp_changesubscriber [ @subscriber = ] 'subscriber'
    [ , [ @type = ] type ]
    [ , [ @login = ] 'login' ]
    [ , [ @password = ] 'password' ]
    [ , [ @commit_batch_size = ] commit_batch_size ]
    [ , [ @status_batch_size = ] status_batch_size ]
    
[ , [ @flush_frequency = ] flush_frequency ]
    [ , [ @frequency_type = ] frequency_type ]
    [ , [ @frequency_interval = ] frequency_interval ]
    [ , [ @frequency_relative_interval = ] frequency_relative_interval ]
    [ , [ @frequency_recurrence_factor = ] frequency_recurrence_factor ]
    [ , [ @frequency_subday = ] frequency_subday ]
    [ , [ @frequency_subday_interval = ] frequency_subday_interval ]
    [ , [ @active_start_time_of_day = ] active_start_time_of_day ]
    [ , [ @active_end_time_of_day = ] active_end_time_of_day ]
    [ , [ @active_start_date = ] active_start_date ]
    
[ , [ @active_end_date = ] active_end_date ]
    [ , [ @description = ] 'description' ]
    [ , [ @security_mode = ] security_mode ]

参数

[@subscriber =] 'subscriber'

是在其上更改这些选项的订阅服务器名称。subscriber 的数据类型为 sysname,没有默认设置。

[@type =] type

是订阅服务器的类型。type 的数据类型为 tinyint,默认设置为 NULL。0 表示 Microsoft® SQL Server™ 订阅服务器。而 1 指定非 SQL Server 或其它 ODBC 数据源服务器订阅服务器。

[ @login = ] 'login'

是 SQL Server 身份验证登录 ID。login 的数据类型为 sysname,默认设置为 NULL。

[@password = ] 'password'

是 SQL Server 身份验证密码。password 的数据类型为 sysname,默认设置为 %。% 表示未对密码属性进行更改。

[@commit_batch_size =] commit_batch_size

仅为保持向后兼容性。

[@status_batch_size =] status_batch_size

仅为保持向后兼容性。

[@flush_frequency =] flush_frequency

仅为保持向后兼容性。

[@frequency_type =] frequency_type

是调度分发任务所使用的频率。frequency_type 的数据类型为 int,可以是下列值之一。

描述
1 一次
2 按需
4 每天
8 每周
16 每月
32 每月相对信息
64 自动启动
128 反复出现
NULL(默认值)  

[@frequency_interval =] frequency_interval

frequency_type 的间隔。frequency_interval 的数据类型为 int,默认设置为 NULL。

[@frequency_relative_interval =] frequency_relative_interval

是分发任务运行的日期。当 frequency_type 设置为 32(每月相对信息)时使用该参数。frequency_relative_interval 的数据类型为 int,可以是下列值之一。

描述
1 第一个
2
4 第三个
8 第四个
16 最后一个
NULL(默认值)  

[@frequency_recurrence_factor =] frequency_recurrence_factor

是分发任务在定义的 frequency_type 内重复的频率。frequency_recurrence_factor 的数据类型为 int,默认设置为 NULL。

[@frequency_subday =] frequency_subday

是在定义的周期内重新调度的频率。frequency_subday 的数据类型为 int,可以是下列值之一。

描述
1(默认值) 一次
2
4 分钟
8 小时

[@frequency_subday_interval =] frequency_subday_interval

frequency_subday 的间隔。frequency_subday_interval 的数据类型为 int,默认设置为 NULL。

[@active_start_time_of_day =] active_start_time_of_day

是第一次调度分发任务的时间,格式为 HHMMSS。active_start_time_of_day 的数据类型为 int,默认设置为 NULL。

[@active_end_time_of_day =] active_end_time_of_day

是停止调度分发任务的时间,格式为 HHMMSS。active_end_time_of_day 的数据类型为 int,默认设置为 NULL。

[@active_start_date =] active_start_date

是第一次调度分发任务的日期,格式为 YYYYMMDD。active_start_date 的数据类型为 int,默认设置为 NULL。

[@active_end_date =] active_end_date

是停止调度分发任务的日期,格式为 YYYYMMDD。active_end_date 的数据类型为 int,默认设置为 NULL。

[@description =] 'description'

是可选的文本描述。description 的数据类型为 nvarchar(255),默认设置为 NULL。

[@security_mode =] security_mode

是实现的安全模式。security_mode 的数据类型为 int,可以是下列值之一。

描述
0 SQL Server 身份验证
1 Windows 身份验证
NULL(默认值)  

返回代码值

0(成功)或 1(失败)

注释

sp_changesubscriber 用于所有类型的复制。

权限

只有 sysadmin 固定服务器角色成员才能执行 sp_changesubscriber

请参见

sp_addsubscriber

sp_dropsubscriber

sp_helpdistributiondb

sp_helpserver

sp_helpsubscriberinfo

系统存储过程