Transact-SQL 参考

sp_copysubscription

复制具有请求订阅但无强制订阅的订阅数据库。仅可复制单个文件数据库。该存储过程在订阅服务器的订阅数据库上执行。

语法

sp_copysubscription [ @filename = ] 'file name'
    [ , [ @temp_dir = ] 'temp_dir' ]
    [ , [ @overwrite_existing_file = ] overwrite_existing_file]

参数

[@filename = ] 'file name'

是指定保存数据文件 (.mdf) 复本的完整路径(包括文件名)。filename 的数据类型为 nvarchar(260),没有默认设置。

[@temp_dir = ] 'temp_dir'

是包含临时文件的目录名。temp_dir 的数据类型为 nvarchar(260),默认设置为 NULL。如果为 NULL,则使用 SQL Server 的默认数据目录。该目录应有足够空间容纳具有组合的所有订阅服务器数据库文件大小的文件。

[@overwrite_existing_file = ] 'overwrite_existing_file'

是可选的布尔型标志,该标志可指定是否重写与 @filename 中指定的名称相同的现有文件。overwrite_existing_file 的数据类型为 bit,默认设置为 0。如果为 1,则它将重写 @filename 所指定的文件(如果该文件存在)。如果为 0,则该存储过程将失败(如果文件存在),并且该文件未被重写。

返回代码值

0(成功)或 1(失败)

注释

sp_copysubscription 用于所有类型的复制,可将订阅数据库复制到一个备用文件中,以便在订阅服务器上应用快照。必须将数据库配置为仅支持请求订阅。具有适当权限的用户可制作订阅数据库的复本,然后将订阅文件 (.msf) 用电子邮件发送、复制或传送到另一台订阅服务器,这样它就可在该订阅服务器上作为订阅附加。

该技术用于复制高度自定义的数据库,这类数据库包含触发器、存储过程、视图、UDF 等用户定义的对象以及默认值和规则这样的对象,这些对象本来不能通过复制传送。

权限

public 角色成员可以执行 sp_copysubscription

请参见

备用快照位置

系统存储过程