sp_helpsubscription (Transact-SQL)

列出特定發行集、發行項、訂閱者或訂閱組的相關聯訂閱資訊。 這個預存程序執行於發行集資料庫的發行者端。

主題連結圖示 Transact-SQL 語法慣例

語法

sp_helpsubscription [ [ @publication = ] 'publication' ] 
    [ , [ @article = ] 'article' ]
    [ , [ @subscriber = ] 'subscriber' ]
    [ , [ @destination_db = ] 'destination_db' ] 
    [ , [ @found=] found OUTPUT ]
    [ , [ @publisher = ] 'publisher' ]

引數

  • [ @publication = ] 'publication'
    這是關聯的發行集名稱。 publication 是 sysname,預設值是 %,傳回這個伺服器的所有訂閱資訊。

  • [ @article= ] 'article'
    這是發行項的名稱。 article 是 sysname,預設值是 %,可傳回與選定發行集和訂閱者相關的所有訂閱資訊。 如果是 all,發行集的完整訂閱只有一個傳回的項目。

  • [ @subscriber= ] 'subscriber'
    這是取得訂閱資訊的相關訂閱者名稱。 subscriber 是 sysname,預設值是 %,可傳回與選定發行集和發行項相關的所有訂閱資訊。

  • [ @destination_db= ] 'destination_db'
    這是目的地資料庫的名稱。 destination_db 是 sysname,預設值是 %

  • [ @found= ] **'found'**OUTPUT
    這是表示傳回資料列的旗標。 found 是 int,它是一個 OUTPUT 參數,預設值是 23456。

    1 表示找到發行集。

    0 表示找不到發行集。

  • [ @publisher= ] 'publisher'
    這是發行者的名稱。 publisher是sysname,預設值為目前伺服器的名稱。

    [!附註]

    除非是 Oracle 發行者,否則,不應指定 publisher。

結果集

資料行名稱

資料類型

說明

subscriber

sysname

訂閱者的名稱。

publication

sysname

發行集的名稱。

article

sysname

發行項的名稱。

destination database

sysname

複寫的資料放在其中的目的地資料庫名稱。

subscription status

tinyint

訂閱狀態:

0 = 非使用中

1 = 已訂閱

2 = 使用中

synchronization type

tinyint

訂閱同步處理類型:

1 = 自動

2 = 無

subscription type

int

訂閱的類型:

0 = 發送

1 = 提取

2 = 匿名

full subscription

bit

訂閱是否針對發行集中的所有發行項:

0 = 否

1 = 是

subscription name

nvarchar(255)

訂閱的名稱。

update mode

int

0 = 唯讀

1 = 立即更新訂閱

distribution job id

binary(16)

散發代理程式的作業識別碼。

loopback_detection

bit

回送偵測會判斷散發代理程式是否將起源於訂閱者端的交易傳回給訂閱者:

0 = 傳回。

1 = 不傳回。

搭配雙向異動複寫來使用。 如需詳細資訊,請參閱<雙向異動複寫>。

offload_enabled

bit

指定是否已將複寫代理程式的卸載執行設成執行於訂閱者端。

如果是 0,代理程式便是執行於發行者端。

如果是 1,代理程式便是執行於訂閱者端。

offload_server

sysname

啟用遠端代理程式啟動的伺服器名稱。 如果是 NULL,就會使用 MSdistribution_agents 資料表所列出的目前 offload_server。

dts_package_name

sysname

指定 Data Transformation Services (DTS) 封裝的名稱。

dts_package_location

int

如果訂閱指派了 DTS 封裝,便是這項封裝的位置。 如果有封裝,0 值指定在散發者端的封裝位置。 1 值指定訂閱者

subscriber_security_mode

smallint

這是在訂閱者端的安全性模式,1 表示 Windows 驗證,0 表示 SQL Server 驗證。

subscriber_login

sysname

這是在訂閱者端的登入名稱。

subscriber_password

 

永遠不傳回實際的訂閱者密碼。 結果會有 "******" 字串標示。

job_login

sysname

用來執行散發代理程式之 Windows 帳戶的名稱。

job_password

 

永遠不傳回實際的作業密碼。 結果會有 "******" 字串標示。

distrib_agent_name

nvarchar(100)

同步處理訂閱的代理程式作業的名稱。

subscriber_type

tinyint

這是訂閱者的類型,它可以是下列其中之一:

說明

0

SQL Server 訂閱者

1

ODBC 資料來源伺服器

2

Microsoft JET 資料庫 (已被取代)

3

OLE DB 提供者

subscriber_provider

sysname

用來登錄非 SQL Server 資料來源之 OLE DB 提供者的唯一程式化識別碼 (PROGID)。

subscriber_datasource

nvarchar(4000)

OLE DB 提供者所了解的資料來源名稱。

subscriber_providerstring

nvarchar(4000)

OLE DB 提供者特定的連接字串,用來識別資料來源。

subscriber_location

nvarchar(4000)

OLE DB 提供者所了解的資料庫位置

subscriber_catalog

sysname

建立 OLE DB 提供者連接時所用的目錄。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_helpsubscription 用於快照式和異動複寫中。

權限

執行權限預設會授與 public 角色。 使用者是使用者所建立之訂閱的唯一傳回資訊。 所有訂閱的相關資訊都會傳回給發行者端的系統管理員 (sysadmin) 固定伺服器角色,或發行集資料庫的 db_owner 固定資料庫角色的成員。

請參閱

參考

sp_addsubscription (Transact-SQL)

sp_changesubstatus (Transact-SQL)

sp_dropsubscription (Transact-SQL)

系統預存程序 (Transact-SQL)