sys.conversation_endpoints (Transact-SQL)

Service Broker 交談的每一端都是以交談端點來代表。這份目錄檢視會針對資料庫中的每個交談端點,各包含一資料列。

資料行名稱

資料類型

描述

conversation_handle

uniqueidentifier

這個交談端點的識別碼。不是 NULLABLE。

conversation_id

uniqueidentifier

交談的識別碼。交談參與者雙方共用這個識別碼。這和 is_initiator 資料行在資料庫中都是唯一的。不是 NULLABLE。

is_initiator

tinyint

這個端點是交談的起始端或是目標。不是 NULLABLE。

1 = 起始端

0 = 目標

service_contract_id

int

這個交談的合約識別碼。不是 NULLABLE。

conversation_group_id

uniqueidentifier

這個交談所屬之交談群組的識別碼。不是 NULLABLE。

service_id

int

交談這一端的服務識別碼。不是 NULLABLE。

lifetime

datetime

這個交談的到期日期/時間。不是 NULLABLE。

state

char(2)

交談的目前狀態。不是 NULLABLE。它是下列項目之一:

  • SO 已起始傳出。SQL Server 已處理此交談的 BEGIN CONVERSATION,但尚未傳送任何訊息。

  • SI 已起始傳入。另一個執行個體已起始與 SQL Server 的新交談,但 SQL Server 尚未完全收到第一則訊息。如果第一個訊息被分割,或者 SQL Server 收到訊息的順序不正確,SQL Server 就可能會建立處於此狀態的交談。然而,如果收到交談的第一次傳輸包含完整的第一則訊息,則 SQL Server 可能會建立 CO (交談) 狀態的交談。

  • CO 正在交談。已建立交談,且交談兩端可以傳送訊息。一般服務的大部份通訊都發生在這個狀態的交談中。

  • DI 已中斷傳入。交談的遠端發出了 END CONVERSATION。交談會保留在這個狀態中,直到交談的本機端發出 END CONVERSATION 為止。應用程式可能仍會接收交談的訊息。由於交談的遠端已經結束交談,所以應用程式無法在此交談中傳送訊息。當應用程式發出 END CONVERSATION 時,交談會移到 CD (已關閉) 狀態。

  • DO 已中斷傳出。交談的本機端發出了 END CONVERSATION。交談會保留在這個狀態中,直到交談的遠端收到 END CONVERSATION 為止。應用程式無法傳送或接收交談的訊息。當交談的遠端認可 END CONVERSATION 時,交談會移到 CD (已關閉) 狀態。

  • ER 錯誤。這個端點發生錯誤。錯誤、嚴重性和狀態資料行包含發生之特定錯誤的資訊。

  • CD 已關閉。交談端點已不在使用中。

state_desc

nvarchar(60)

這是端點交談狀態的描述,它有下列幾種:

  • STARTED_OUTBOUND

  • STARTED_INBOUND

  • CONVERSING

  • DISCONNECTED_INBOUND

  • DISCONNECTED_OUTBOUND

  • CLOSED

  • ERROR

此資料行為 NULLABLE。

far_service

nvarchar(256)

交談遠端的服務名稱。不是 NULLABLE。

far_broker_instance

nvarchar(128)

交談遠端的 Broker 執行個體。NULLABLE。

principal_id

int

憑證用於對話本機端之主體的識別碼。不是 NULLABLE。

far_principal_id

int

憑證用於對話遠端之使用者的識別碼。不是 NULLABLE。

outbound_session_key_identifier

uniqueidentifier

這個對話之傳出加密金鑰的識別碼。不是 NULLABLE。

inbound_session_key_identifier

uniqueidentifier

這個對話之傳入加密金鑰的識別碼。不是 NULLABLE。

security_timestamp

datetime

本機工作階段金鑰的建立時間。不是 NULLABLE。

dialog_timer

datetime

這個對話之交談計時器傳送 DialogTimer 訊息的時間。不是 NULLABLE。

send_sequence

bigint

傳送順序中下一個訊息編號。不是 NULLABLE。

last_send_tran_id

binary(6)

上一次傳送訊息之交易的內部交易識別碼。不是 NULLABLE。

end_dialog_sequence

bigint

結束對話訊息的序號。不是 NULLABLE。

receive_sequence

bigint

訊息接收順序中預期的下一個訊息編號。不是 NULLABLE。

receive_sequence_frag

int

訊息接收順序中預期的下一個訊息片段編號。不是 NULLABLE。

system_sequence

bigint

這個對話最後一個系統訊息的序號。不是 NULLABLE。

first_out_of_order_sequence

bigint

這個對話在次序不對的訊息中第一則訊息的序號。不是 NULLABLE。

last_out_of_order_sequence

bigint

這個對話在次序不對的訊息中最後一則訊息的序號。不是 NULLABLE。

last_out_of_order_frag

int

這個對話在次序不對的片段中最後一則訊息的序號。不是 NULLABLE。

is_system

bit

如果這是系統對話,便是 1。不是 NULLABLE。

priority

tinyint

指派給這個交談端點的交談優先權。不是 NULLABLE。

權限

在 SQL Server 2005 和更新的版本中,目錄檢視內中繼資料的可見性會限制在使用者所擁有的安全性實體,或已授與使用者某些權限的安全性實體。如需詳細資訊,請參閱<中繼資料可見性組態>。

請參閱

概念