共用方式為


sys.dm_exec_connections (Transact-SQL)

傳回有關與這個 SQL Server 執行個體建立之連接及每一個連接之詳細資料的資訊。

適用於:SQL Server (SQL Server 2008 透過目前版本)、Windows Azure SQL 資料庫 (初始版本,透過目前版本)。

資料行名稱

資料類型

描述

session_id

int

識別這項連接的相關工作階段。 可為 Null。

most_recent_session_id

int

代表這項連接最近的相關要求的工作階段識別碼 (SOAP 連接可由其他工作階段重複使用)可為 Null。

connect_time

datetime

建立連接的時間戳記。 不可為 Null。

net_transport

nvarchar(40)

描述這項連接所用的實體傳輸通訊協定。 不可設為 Null。

注意

當連接啟用 Multiple Active Result Set (MARS) 之後,一定會傳回 Session

protocol_type

nvarchar(40)

指定裝載的通訊協定類型。 它目前會區分 TDS (TSQL) 和 SOAP。 可為 Null。

protocol_version

int

這項連接的相關資料存取通訊協定的版本。 可為 Null。

endpoint_id

int

描述其為何種連接類型的識別碼。 這個 endpoint_id 可用來查詢 sys.endpoints 檢視表。 可為 Null。

encrypt_option

nvarchar(40)

描述這項連接是否啟用加密的布林值。 不可為 Null。

auth_scheme

nvarchar(40)

指定搭配這個連接使用的 SQL Server/Windows 驗證配置。 不可為 Null。

node_affinity

smallint

識別此連接具有相似性的記憶體節點。 不可為 Null。

num_reads

int

這項連接期間所進行的封包讀取數。 可為 Null。

num_writes

int

這項連接期間所進行的資料封包寫入數。 可為 Null。

last_read

datetime

這項連接期間最後一次讀取的時間戳記。 可為 Null。

last_write

datetime

這項連接期間最後一次寫入的時間戳記。 不可設為 Null。

net_packet_size

int

用來傳送資訊和資料的網路封包大小。 可為 Null。

client_net_address

varchar(48)

連接到這部伺服器之用戶端的主機位址。 可為 Null。

在 Windows Azure SQL 資料庫,這個資料行一律會傳回 NULL。

client_tcp_port

int

與這項連接相關聯的用戶端電腦上的通訊埠編號。 可為 Null。

在 Windows Azure SQL 資料庫,這個資料行一律會傳回 NULL。

local_net_address

varchar(48)

代表這項連接的目標伺服器的 IP 位址。 只適用於使用 TCP 傳輸提供者的連接。 可為 Null。

在 Windows Azure SQL 資料庫,這個資料行一律會傳回 NULL。

local_tcp_port

int

當這項連接是使用 TCP 傳輸的連接時,代表這項連接的目標伺服器 TCP 埠。 可為 Null。

在 Windows Azure SQL 資料庫,這個資料行一律會傳回 NULL。

connection_id

uniqueidentifier

這用來唯一識別各項連接。 不可為 Null。

parent_connection_id

uniqueidentifier

這用來識別 MARS 工作階段在使用的主要連接。 可為 Null。

most_recent_sql_handle

varbinary(64)

這項連接所執行之前一項要求的 SQL 控制代碼。 most_recent_sql_handle 資料行永遠與 most_recent_session_id 資料行同步。 可為 Null。

權限

需要伺服器的 VIEW SERVER STATE 權限。

實體聯結

sys.dm_exec_connections 的聯結

關聯性基數

dm_exec_sessions.session_id

dm_exec_connections.session_id

一對一

dm_exec_requests.connection_id

dm_exec_connections.connection_id

多對一

dm_broker_connections.connection_id

dm_exec_connections.connection_id

一對一

範例

收集查詢自有連接相關資訊的典型查詢。

SELECT 
    c.session_id, c.net_transport, c.encrypt_option, 
    c.auth_scheme, s.host_name, s.program_name, 
    s.client_interface_name, s.login_name, s.nt_domain, 
    s.nt_user_name, s.original_login_name, c.connect_time, 
    s.login_time 
FROM sys.dm_exec_connections AS c
JOIN sys.dm_exec_sessions AS s
    ON c.session_id = s.session_id
WHERE c.session_id = @@SPID;

請參閱

參考

動態管理檢視和函數 (Transact-SQL)

執行相關的動態管理檢視和函數 (Transact-SQL)