sp_helpmergepublication (Transact-SQL)
適用於:SQL Server
傳回合並式發行集的相關資訊。 這個預存程式會在發行集資料庫的發行者端執行。
語法
sp_helpmergepublication
[ [ @publication = ] N'publication' ]
[ , [ @found = ] found OUTPUT ]
[ , [ @publication_id = ] 'publication_id' OUTPUT ]
[ , [ @reserved = ] N'reserved' ]
[ , [ @publisher = ] N'publisher' ]
[ , [ @publisher_db = ] N'publisher_db' ]
[ ; ]
引數
[ @publication = ] N'publication '
發行集的名稱。 @publication 是 sysname ,預設值 %
為 ,它會傳回目前資料庫中所有合併式發行集的相關資訊。
[ @found = ] 找到 OUTPUT
表示傳回資料列的旗標。 @found 是 int 類型的 OUTPUT 參數。
1
表示找到發行集。0
表示找不到發行集。
[ @publication_id = ] ' publication_id ' OUTPUT
發行集識別碼。 @publication_id是 uniqueidentifier 類型的 OUTPUT 參數。
[ @reserved = ] N'reserved '
僅供參考之用。 不支援。 我們無法保證未來的相容性。
[ @publisher = ] N'publisher '
發行者的名稱。 @publisher為 sysname ,預設值為 NULL
。
[ @publisher_db = ] N'publisher_db '
發行集資料庫的名稱。 @publisher_db 為 sysname ,預設值為 NULL
。
結果集
資料行名稱 | 資料類型 | 描述 |
---|---|---|
id |
int | 結果集清單中的發行集循序順序。 |
name |
sysname | 發行集的名稱。 |
description |
nvarchar(255) | 發行集的描述。 |
status |
tinyint | 指出發行集資料何時可供使用。 |
retention |
int | 儲存發行集中發行項之變更相關中繼資料的時間量。 此時間週期的單位可以是天、周、月或年。 如需單位的相關資訊,請參閱retention_period_unit資料行。 |
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 |
二進位(16) | 快照集代理程式的工作識別碼。 若要取得 sysjobs 系統資料表中 快照集作業的專案,您必須將此十六進位值 轉換為 uniqueidentifier 。 |
enabled_for_internet |
int | 判斷是否為網際網路啟用發行集。 如果 1 為 ,則發行集的同步處理檔案會放入 C:\Program Files\Microsoft SQL Server\MSSQL\Repldata\Ftp 目錄中。 使用者必須建立檔案傳輸通訊協定 (FTP) 目錄。 如果 0 為 ,則不會啟用發行集以進行網際網路存取。 |
dynamic_filter |
int | 指出是否使用參數化資料列篩選。 0 表示未使用參數化資料列篩選。 |
has_subscription |
bit | 指出發行集是否有任何訂閱。 0 表示目前沒有此發行集的訂閱。 |
snapshot_in_default_folder |
bit | 指定快照集檔案是否儲存在預設資料夾中。 如果 1 為 ,則可以在預設資料夾中找到快照集檔案。如果 0 為 ,則快照集檔案會儲存在 所 alt_snapshot_folder 指定的替代位置。 替代位置可以位於另一部伺服器、網路磁碟機機或卸載式媒體上(例如 CD-ROM 或卸載式磁片)。 您也可以將快照集檔案儲存至 FTP 網站,以供訂閱者稍後擷取。注意:此參數可以是 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 表示同步處理已優化,且只會影響在變更資料分割中具有資料列的訂閱者。注意:根據預設,合併式發行集會使用預先計算的資料分割,以提供比此選項更高的優化程度。 如需詳細資訊,請參閱 參數化篩選 - 參數化資料列篩選 和 參數化篩選 - 針對預先計算的資料分割 優化。 |
allow_subscription_copy |
int | 指定是否已啟用複製訂閱此發行集的訂閱資料庫的能力。 值 0 表示不允許複製。 |
allow_synctoalternate |
int | 指定是否允許替代同步處理夥伴與這個發行者同步處理。 的值 0 表示不允許同步處理夥伴。 |
validate_subscriber_info |
Nvarchar(500) | 列出用來擷取訂閱者資訊的函式,並驗證訂閱者上的參數化資料列篩選準則。 協助確認資訊會與每個合併一致地分割。 |
backward_comp_level |
int | 資料庫相容性層級,而且可以是下列其中一個值:90 = SQL Server 2005 (9.x)90 = SQL Server 2005 (9.x) SP190 = SQL Server 2005 (9.x) SP2100 = SQL Server 2008 (10.0.x) |
publish_to_activedirectory |
bit | 指定發行集資訊是否發佈至 Active Directory。 值 0 表示無法從 Active Directory 取得發行集資訊。此參數已被取代,而且會維護腳本的回溯相容性。 您無法再將發行集資訊新增至 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 同步處理的網際網路 URL。 |
allow_partition_realignment |
bit | 判斷在發行者上修改資料列時,是否會將刪除傳送給訂閱者,而導致它變更其分割區。 值 1 表示刪除會傳送至訂閱者。 如需詳細資訊,請參閱 sp_addmergepublication (Transact-SQL) 。 |
retention_period_unit |
tinyint | 定義定義保留時所使用的單位。 這可以是下列其中一個值:0 = day1 = week2 = 月3 = year |
has_downloadonly_articles |
bit | 指出屬於發行集的任何發行項是否為僅限下載發行項。 的值 1 表示有僅限下載的文章。 |
decentralized_conflicts |
int | 指出衝突記錄是否儲存在造成衝突的訂閱者端。 的值 0 表示衝突記錄不會儲存在訂閱者端。 的值 1 表示衝突記錄會儲存在訂閱者端。 |
generation_leveling_threshold |
int | 指定世代中包含的變更數目。 世代是傳遞至發行者或訂閱者的變更集合 |
automatic_reinitialization_policy |
bit | 指出在自動重新初始化之前,是否從訂閱者上傳變更。 值 1 表示在自動重新初始化之前,會先從訂閱者上傳變更。 值為 0 表示在自動重新初始化之前不會上傳變更。 |
傳回碼值
0
(成功)或 1
(失敗)。
備註
sp_helpmergepublication
用於合併式複寫。
權限
發行集的發行集存取清單成員可以針對該發行集執行 sp_helpmergepublication
。 發行集資料庫上db_owner 固定資料庫角色的成員可以針對所有發行集的資訊執行 sp_helpmergepublication
。
範例
DECLARE @publication AS sysname;
SET @publication = N'AdvWorksSalesOrdersMerge';
USE [AdventureWorks2022]
EXEC sp_helpmergepublication @publication = @publication;
GO
相關內容
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: