sp_helpmergepublication (Transact-SQL)

更新日期: 2006 年 12 月 12 日

返回有关合并发布的信息。此存储过程在发布服务器的发布数据库中执行。

主题链接图标Transact-SQL 语法约定

语法

sp_helpmergepublication [ [ @publication= ] 'publication']
    [ , [ @found= ] 'found'OUTPUT]
    [ , [ @publication_id= ] 'publication_id' OUTPUT]
    [ , [ @reserved= ] 'reserved' ]
    [ , [ @publisher = ] 'publisher' ]
    [ , [ @publisher_db = ] 'publisher_db' ]

参数

  • [ @publication = ] 'publication'
    发布的名称。publication 的数据类型为 sysname,默认值为 %,表示返回有关当前数据库内所有合并发布的信息。
  • [ @found=] 'found' OUTPUT
    指示返回行的标志。found 的数据类型为 int 而且是 OUTPUT 参数,默认值为 NULL。1 指示已找到发布。0 指示未找到发布。
  • [ @publication_id=] 'publication_id' OUTPUT
    发布的标识号。publication_id 的数据类型为 uniqueidentifier 而且是 OUTPUT 参数,默认值为 NULL。
  • [ @reserved =] 'reserved'
    保留以备将来使用。reserved 的数据类型为 nvarchar(20),默认值为 NULL。
  • [ @publisher = ] 'publisher'
    发布服务器的名称。publisher 的数据类型为 sysname,默认值为 NULL。
  • [@publisher_db= ] 'publisher_db'
    发布数据库的名称。publisher_db 的数据类型为 sysname,默认值为 NULL。

返回代码值

0(成功)或 1(失败)

结果集

列名

数据类型

说明

id

int

发布在结果集列表中的连续顺序。

name

sysname

发布的名称。

description

nvarchar(255)

对发布的说明。

status

tinyint

发布数据何时可用。

retention

int

为给定的发布保存的更改量(天)。

sync_mode

tinyint

该发布的同步模式:

0 = 本机大容量复制程序(bcp 实用工具)

1 = 字符大容量复制

allow_push

int

表示是否可以为给定的发布创建推送订阅。0 表示不允许推送订阅。

allow_pull

int

表示是否可以为给定的发布创建请求订阅。0 表示不允许请求订阅。

allow_anonymous

int

表示是否可以为给定的发布创建匿名订阅。0 表示不允许匿名订阅。

centralized_conflicts

int

表示是否在给定的发布服务器上存储冲突记录:

0 = 在导致冲突的发布服务器和订阅服务器上均存储冲突记录。

1 = 将所有冲突记录都存储在发布服务器上。

priority

float(8)

环回订阅的优先级。

snapshot_ready

tinyint

表示该发布的快照是否已准备好使用:

0 = 快照可用。

1 = 快照尚不可用。

publication_type

int

发布的类型:

0 = 快照。

1 = 事务。

2 = 合并。

pubid

uniqueidentifier

该发布的唯一标识符。

snapshot_jobid

binary(16)

快照代理的作业 ID。若要获取 sysjobs 系统表中快照作业的相应项,必须将该十六进制值转换为 uniqueidentifier

enabled_for_internet

int

表示是否启用该发布以用在 Internet 上。如果为 1,则表示该发布的同步文件放在 C:\Program Files\Microsoft SQL Server\MSSQL\Repldata\Ftp 目录内。用户必须创建文件传输协议 (FTP) 目录。如果为 0,则不为 Internet 访问启用该发布。

dynamic_filter

int

表示是否使用参数化行筛选器。0 表示不使用参数化行筛选器。

has_subscription

bit

表示该发布是否具有任何订阅。0 表示当前没有对该发布的订阅。

snapshot_in_default_folder

bit

指定快照文件是否存储在默认文件夹中。

如果为 1,则可以在默认文件夹中找到快照文件。

如果为 0,则表示快照文件存储在 alt_snapshot_folder 所指定的替代位置中。替代位置可以在其他服务器、网络驱动器或可移动媒体(如 CD-ROM 或可移动磁盘)上。也可以将快照文件保存到 FTP 站点以供订阅方以后检索。

ms189475.note(zh-cn,SQL.90).gif注意:

此参数可为 true,而且在 alt_snapshot_folder 参数中仍有一个位置。这个组合指定将快照文件存储在默认位置和替代位置。

alt_snapshot_folder

nvarchar(255)

指定快照的备用文件夹的位置。

pre_snapshot_script

nvarchar(255)

指定指向某个 .sql 文件的指针,在订阅服务器上应用快照时,合并代理在运行任何已复制对象脚本之前先运行该文件。

post_snapshot_script

nvarchar(255)

指定指向某个 .sql 文件的指针,在初始同步期间应用了所有其他的已复制对象脚本和数据之后,合并代理才运行该文件。

compress_snapshot

bit

指定将写入 alt_snapshot_folder 位置的快照压缩为 Microsoft CAB 格式。

ftp_address

sysname

分发服务器的 FTP 服务网络地址。指定供合并代理拾取的发布快照文件所在的位置。

ftp_port

int

分发服务器的 FTP 服务端口号。ftp_port 的默认值为 21。指定供合并代理拾取的发布快照文件所在的位置。

ftp_subdirectory

nvarchar(255)

指定当使用 FTP 传递快照时,快照文件供合并代理拾取的位置。

ftp_login

sysname

用于连接到 FTP 服务的用户名。

conflict_retention

int

指定保留冲突的保持期(天)。指定的天数过后,冲突行将从冲突表中清除掉。

keep_partition_changes

int

指定是否为该发布进行同步优化。keep_partition_changes 的默认值为 0

0 表示不优化同步,当分区中的数据更改时,验证发送到所有订阅服务器的分区。

1 表示优化同步,只影响在更改的分区中有行的订阅服务器。

ms189475.note(zh-cn,SQL.90).gif注意:

默认情况下,合并发布使用预计算分区,与该选项相比,它提供更大程度的优化。有关详细信息,请参阅参数化行筛选器使用预计算分区优化参数化筛选器的性能

allow_subscription_copy

int

指定是否已启用复制订阅该发布的订阅数据库的功能。0 表示不允许复制。

allow_synctoalternate

int

指定是否允许备用同步伙伴与该发布服务器同步。0 表示不允许同步伙伴。

validate_subscriber_info

nvarchar(500)

列出正用于检索订阅服务器信息和验证订阅服务器上的参数化行筛选条件的函数。有助于验证信息分区是否与每个合并一致。

backward_comp_level

int

数据库兼容级别,可以为下列值之一:

10 = Microsoft SQL Server 7.0

20 = SQL Server 7.0 Service Pack 1

30 = SQL Server 7.0 Service Pack 2

35 = SQL Server 7.0 Service Pack 3

40 = Microsoft SQL Server 2000

50 = SQL Server 2000 Service Pack 1

60 = SQL Server 2000 Service Pack 3

90 = Microsoft SQL Server 2005

publish_to_activedirectory

bit

指定是否将发布信息发布到 Microsoft Active Directory。0 表示无法从 Active Directory 获得发布信息。

已不推荐使用该参数,支持该参数只是为了让脚本能够向后兼容。不能再向 Microsoft Active Directory 中添加发布信息。

max_concurrent_merge

int

并发合并进程数。如果此属性值为 0,则表示在任何给定时间都不限制运行的并发合并进程数。

max_concurrent_dynamic_snapshots

int

针对合并发布可以运行的最大并发已筛选数据快照会话数。如果为 0,则表示在任何给定时间都不限制可针对该发布同时运行的并发筛选数据快照会话的最大数目。

use_partition_groups

int

表示是否使用预计算分区。1 表示使用预计算分区。

num_of_articles

int

发布中的项目个数。

replicate_ddl

int

表示是否复制对已发布表的架构更改。1 表示复制架构更改。

publication_number

smallint

分配给该发布的编号。

allow_subscriber_initiated_snapshot

bit

表示订阅服务器是否可以启动已筛选数据快照生成进程。1 表示订阅服务器可以启动快照进程。

allow_web_synchronization

bit

表示是否为 Web 同步启用发布。1 表示启用 Web 同步。

web_synchronization_url

nvarchar(500)

用于 Web 同步的 Internet URL。

allow_partition_realignment

bit

表示在发布服务器上的行修改导致该发布服务器更改其分区时是否将删除发送到订阅服务器。

1 表示将删除发送到订阅服务器。

0 表示不发送删除。有关详细信息,请参阅 sp_addmergepublication

retention_period_unit

tinyint

定义在定义保持期时使用的单位,可以为下列值之一:

0 = 天

1 = 周

2 = 月

3 = 年

has_downloadonly_articles

bit

指示属于发布的所有项目是否为仅用于下载的项目。值 1 指示具有仅用于下载的项目。

decentralized_conflicts

int

指示是否在导致冲突的订阅服务器上存储冲突记录:

0 = 不在订阅服务器上存储冲突记录。

1 = 在订阅服务器上存储冲突记录。

generation_leveling_threshold

int

指定生成中包含的更改次数。生成是指已传递给发布服务器或订阅服务器的更改集合。有关详细信息,请参阅合并复制如何跟踪和枚举更改

automatic_reinitialization_policy

bit

指示是否在进行自动重新初始化之前从订阅服务器上载更改。

1 = 在自动重新初始化之前,从订阅服务器上载更改。

0 = 在自动重新初始化之前,不上载更改。

备注

sp_helpmergepublication 用于合并复制。

权限

发布的发布访问列表的成员可以针对该发布执行 sp_helpmergepublication。发布数据库中的 db_owner 固定数据库角色成员可以针对所有发布的信息执行 sp_helpmergepublication

示例

DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';

USE [AdventureWorks]
EXEC sp_helpmergepublication @publication = @publication;
GO

请参阅

参考

sp_addmergepublication (Transact-SQL)
sp_changemergepublication (Transact-SQL)
sp_dropmergepublication (Transact-SQL)
复制存储过程 (Transact-SQL)

其他资源

How to: View and Modify Publication Properties (Replication Transact-SQL Programming)

帮助和信息

获取 SQL Server 2005 帮助

更改历史记录

发布日期 历史记录

2006 年 12 月 12 日

新增内容:
  • 添加了有关 generation_leveling_threshold 列的信息