sp_addsubscriber (Transact-SQL)
向发布服务器添加新的订阅服务器,使其能够接收发布。 对于快照和事务发布,此存储过程在发布服务器的发布数据库中执行;对于使用远程分发服务器的合并发布,此存储过程在分发服务器执行。
重要提示 |
---|
已不推荐使用此存储过程。 不再要求在发布服务器上显式注册订阅服务器。 |
语法
sp_addsubscriber [ @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 ]
[ , [ @encrypted_password = ] encrypted_password ]
[ , [ @publisher = ] 'publisher' ]
参数
[ @subscriber=] 'subscriber'
将作为有效订阅服务器添加到该服务器的发布中的订阅服务器的名称。 subscriber 的数据类型为 sysname,无默认值。[ @type=] type
订阅服务器的类型。 type 的数据类型为 tinyint,可以为下列值之一。值
说明
0(默认值)
Microsoft SQL Server 订阅服务器
1
ODBC 数据源服务器
2
Microsoft Jet 数据库
3
OLE DB 访问接口
[ @login=] 'login'
SQL Server 身份验证的登录 ID。 login 的数据类型为 sysname,默认值为 NULL。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @password=] 'password'
SQL Server 身份验证的密码。 password 的数据类型为 nvarchar(524),默认值为 NULL。安全说明 不要使用空密码。 请使用强密码。
注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @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
重复执行
注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[@frequency_interval= ] frequency_interval
应用于由 frequency_type 设置的频率的值。 frequency_interval 的数据类型为 int,默认值为 1。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @frequency_relative_interval=] frequency_relative_interval
复制代理的日期。 在将 frequency_type 设置为 32(“每月”选项相关)时使用此参数。 frequency_relative_interval 的数据类型为 int,它可以为以下值之一。值
说明
1(默认值)
第一个
2
第二个
4
第三次
8
第四个
16
最后一个
注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @frequency_recurrence_factor=] frequency_recurrence_factor
是 frequency_type 使用的重复因子。 frequency_recurrence_factor 的数据类型为 int,默认值为 0。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @frequency_subday=] frequency_subday
在指定期内重新安排计划的频率。 frequency_subday 的数据类型为 int,可以为下列值之一。值
说明
1
一次
2
秒
4(默认值)
分钟
8
小时
注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @frequency_subday_interval=] frequency_subday_interval
是 frequency_subday 的时间间隔。 frequency_subday_interval 的数据类型为 int,默认值为 5。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @active_start_time_of_day=] active_start_time_of_day
第一次安排复制代理的时间,格式为 HHMMSS。 active_start_time_of_day 的数据类型为 int,默认值为 0。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @active_end_time_of_day=] active_end_time_of_day
停止安排复制代理的时间,格式为 HHMMSS。 active_end_time_of_day 的数据类型为 int,默认值为 235959,表示 24 小时制的 11:59:59 P.M. 。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @active_start_date=] active_start_date
第一次安排复制代理的日期,格式为 YYYYMMDD。 active_start_date 的数据类型为 int,默认值为 0。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @active_end_date=] active_end_date
停止安排复制代理的日期,格式为 YYYYMMDD。 active_end_date 的数据类型为 int,默认值为 99991231,表示 9999 年 12 月 31 日。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @description=] 'description'
订阅服务器的文本说明。 description 的数据类型为 nvarchar(255),默认值为 NULL。[ @security_mode=] security_mode
所实现的安全模式。 security_mode 的数据类型为 int,默认值为 1。 0 指定 SQL Server 身份验证。 1 指定 Windows 身份验证。注意 已不推荐使用此参数,保留它为了让脚本能够向后兼容。 现在,该属性是在执行 sp_addsubscription 时为每个订阅指定。 在指定值后,该值将用作在此订阅服务器上创建订阅时的默认值,同时返回一条警告消息。
[ @encrypted_password=] encrypted_password
不推荐使用此参数,只是为了实现向后兼容性而提供的。将 encrypted_password 设置为除了 0 之外的任何值将产生错误。[ @publisher= ] 'publisher'
指定非 SQL Server 发布服务器。 publisher 的数据类型为 sysname,默认值为 NULL。注意 从 SQL Server 发布服务器进行发布时,不应使用 publisher。
返回代码值
0(成功)或 1(失败)
注释
sp_addsubscriber 在快照复制、事务复制和合并复制中使用。
如果订阅服务器只有对合并发布的匿名订阅,则不需要 sp_addsubscriber。
sp_addsubscriber 写入“分发”数据库中的 MSsubscriber_info 表。
权限
只有 sysadmin 固定服务器角色的成员才能执行 sp_addsubscriber。
请参阅
参考
sp_changesubscriber (Transact-SQL)
sp_dropsubscriber (Transact-SQL)
sp_helpsubscriberinfo (Transact-SQL)