本主題描述如何使用 SQL Server Management Studio、Transact-SQL 或 Replication Management Objects (RMO) 在 SQL Server 2014 中檢視和修改提取訂閱屬性。
本主題內容
若要檢視和修改提取訂閱屬性,請使用:
使用 SQL Server Management Studio
在 SQL Server Management Studio 中,您可以在 [訂閱屬性 - <發行>者:<PublicationDatabase>] 對話框中查看發行者或訂閱者的拉取訂閱屬性。 訂閱者可以看到更多屬性,而且可以在訂閱者端修改屬性。 您也可以在 [ 所有訂閱 ] 標籤上檢視發行者的屬性,這個標籤可在複寫監視器中使用。 如需啟動複寫監視器的詳細資訊,請參閱啟動複寫監視器。
若要使用 Management Studio 從發行者檢視拉取訂閱屬性
連線至 Microsoft SQL Server Management Studio 中的發行者,然後展開伺服器節點。
展開 複寫 資料夾,然後展開 本機發行集 資料夾。
展開適當的發行集,以滑鼠右鍵單擊訂閱,然後按 [屬性]。
檢視屬性,然後按兩下 [ 確定]。
若要從Management Studio中的訂閱者檢視和修改提取訂閱屬性
連線至 SQL Server Management Studio 中的訂閱者,然後展開伺服器節點。
展開複寫資料夾,然後展開本機訂閱資料夾。
以滑鼠右鍵點擊訂用帳戶,然後點擊 屬性。
必要時修改任何屬性,然後按一下 [確定] 。
從複寫監視器中的發佈者查看提取訂閱屬性
在複寫監視器的左窗格中展開發行者群組,展開發行者,然後按一下發行集。
按一下 [所有訂閱] 索引標籤。
按一下滑鼠右鍵訂用帳戶,然後按一下 [屬性]。
檢視屬性,然後按兩下 [ 確定]。
使用 Transact-SQL
拉取訂閱可以修改,並使用複寫預存程序以程式方式存取其屬性。 使用的預存程式取決於訂閱所屬的發行集類型。
若要檢視快照式或交易式發行集之提取訂閱的屬性
在訂閱者端,執行 sp_helppullsubscription。 指定 @publisher、 @publisher_db和 @publication。 這會傳回儲存在訂閱者端系統數據表中的訂閱相關信息。
在訂閱者端,執行 sp_helpsubscription_properties。 針對@publication_type指定@publisher、@publisher_db、@publication和下列其中一個值:
0 - 訂閱屬於交易型出版物。
1 - 訂閱屬於快照型出版。
在發行者上,執行 sp_helpsubscription。 指定 @publication 和 @subscriber。
於發行者執行 sp_helpsubscriberinfo,指定 @subscriber。 這會顯示訂閱者的相關信息。
要更改提取訂閱的屬性,使其符合快照式或交易式發行方式的配置。
在訂閱者端,執行 sp_change_subscription_properties,並指定 @publisher、@publisher_db、@publication、將 @publication_type 設為 0(交易) 或 1(快照),將要更改的訂閱屬性設為 @property 並將其新值設為 @value。
(選擇性)在訂閱資料庫的訂閱者端,執行 sp_changesubscriptiondtsinfo。 針對 @jobid 指定散發代理程式作業的識別碼,以及下列資料轉換服務 (DTS) 套件屬性:
@dts_package_name
@dts_package_password
@dts_package_location
這會變更訂用帳戶的 DTS 套件屬性。
備註
您可以執行 sp_helpsubscription來取得作業標識碼。
若要檢視合併出版物的拉取訂閱屬性
在訂閱者端,執行 sp_helpmergepullsubscription。 指定 @publisher、 @publisher_db和 @publication。
在訂閱者端,執行 sp_helpsubscription_properties。 針對@publication_type指定@publisher、@publisher_db、@publication和 2 值。
在發行者上,執行 sp_helpmergesubscription 以顯示訂用帳戶資訊。 若要傳回特定訂用帳戶的資訊,您必須指定@publication、@subscriber,以及在@subscription_type中設置pull值。
在發行者上,執行 sp_helpsubscriberinfo,指定 @subscriber。 這會顯示訂閱者的相關信息。
若要變更針對合併發行的拉取訂閱屬性
- 在訂閱者端,執行 sp_changemergepullsubscription。 指定 @publication、 @publisher、 @publisher_db、要變更為 @property的訂用帳戶屬性,並將新值指定為 @value。
使用 Replication Management Objects (RMO)
您用來檢視或修改提取訂閱屬性的 RMO 類別取決於提取訂閱訂閱的發行集類型。
若要檢視或修改快照式或交易式發行集之提取訂閱的屬性
使用 ServerConnection 類別建立與「訂閱者」的連接。
建立 TransPullSubscription 類別的執行個體。
PublicationName設定、DatabaseName、 PublisherName和 PublicationDBName 屬性。
針對 ConnectionContext 屬性設定步驟 1 中的連接。
呼叫 LoadProperties 方法以取得物件的屬性。 如果此方法傳
false回 ,則表示步驟 3 中的訂閱屬性定義不正確,或訂閱不存在於伺服器上。(選擇性)若要變更屬性,請為其中一個 TransPullSubscription 可設定的屬性設定新的值,然後呼叫 CommitPropertyChanges 方法。
(選擇性)若要檢視新的設定,請呼叫 Refresh 方法來重載發行項的屬性。
關閉所有連線。
若要檢視或修改合併式發行集之提取訂閱的屬性
使用 ServerConnection 類別建立與「訂閱者」的連接。
建立 MergePullSubscription 類別的執行個體。
PublicationName設定、DatabaseName、 PublisherName和 PublicationDBName 屬性。
針對 ConnectionContext 屬性設定步驟 1 中的連接。
呼叫 LoadProperties 方法以取得物件的屬性。 如果此方法傳
false回 ,則表示步驟 3 中的訂閱屬性定義不正確,或訂閱不存在於伺服器上。(選擇性)若要變更屬性,請為其中一個 MergePullSubscription 可設定的屬性設定新的值,然後呼叫 CommitPropertyChanges 方法。
(選擇性)若要檢視新的設定,請呼叫 Refresh 方法來重載發行項的屬性。
關閉所有連線。