更改订阅服务器的选项。更新针对此发布服务器的订阅服务器的任何分发任务。此存储过程写入分发数据库中的 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。