sp_helpsubscription (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。
傳回碼值
0 (成功) 或 1 (失敗)
結果集
資料行名稱
資料類型
描述
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
這是訂閱者的類型,它可以是下列其中之一:
值
描述
0SQL Server 訂閱者
1ODBC 資料來源伺服器
2Microsoft JET 資料庫 (已被取代)
3OLE 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 提供者連接時所用的目錄。
備註
sp_helpsubscription 用於快照式和交易式複寫中。
權限
執行權限預設會授與 public 角色。使用者是使用者所建立之訂閱的唯一傳回資訊。所有訂閱的相關資訊都會傳回給發行者端的系統管理員 (sysadmin) 固定伺服器角色,或發行集資料庫的 db_owner 固定資料庫角色的成員。
請參閱
參考
sp_addsubscription (Transact-SQL)
sp_changesubstatus (Transact-SQL)
sp_dropsubscription (Transact-SQL)
系統預存程序 (Transact-SQL)