sp_changesubscriber (Transact-SQL)
更改订阅服务器的选项。 更新针对此发布服务器的订阅服务器的任何分发任务。 此存储过程写入分发数据库中的 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 ]
[ , [ @publisher = ] 'publisher' ]
参数
[ @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
重复执行
[ @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
最后一次
[ @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
是 frequence_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 身份验证
[ @publisher= ] 'publisher'
指定非 SQL Server 发布服务器。 publisher 的数据类型为 sysname,默认值为 NULL。备注
更改 SQL Server 发布服务器上的项目属性时,不应使用 publisher。
返回代码值
0(成功)或 1(失败)
注释
sp_changesubscriber 用于所有类型的复制。
权限
只有 sysadmin 固定服务器角色成员才能执行 sp_changesubscriber。
请参阅
参考
sp_addsubscriber (Transact-SQL)
sp_dropsubscriber (Transact-SQL)
sp_helpdistributiondb (Transact-SQL)