共用方式為


sys.dm_exec_connections

更新: 2006 年 12 月 12 日

傳回與 SQL Server 連接相關的伺服器層級資訊。

sys.dm_exec_connectionssys.dm_exec_sessionssys.dm_exec_requests 動態管理檢視會對應至 sys.sysprocesses 系統資料表。

資料行名稱

資料類型

描述

session_id

int

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

most_recent_session_id

int

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

connect_time

datetime

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

net_transport

nvarchar(40)

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

ms181509.note(zh-tw,SQL.90).gif附註:

當連接啟用 Multiple Active Result Sets (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 驗證的機制 (NTLM、KERBEROS、DIGEST、BASIC、NEGOTIATE) 或 SQL Server 驗證的 SQL。不可為 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(40) (SQL Server 2005)

varchar(48) (SQL Server 2005 Service Pack 1)

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

client_tcp_port

int

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

local_net_address

varchar(40) (SQL Server 2005)

varchar(48) (SQL Server 2005 Service Pack 1)

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

local_tcp_port

int

當這項連接是使用 TCP 傳輸的連接時,代表這項連接的目標伺服器 TCP 埠。可為 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

sys.dm_exec_connections

parent_connection_id = connection_id

一對零或一對多

sys.dm_exec_sessions

sys.dm_exec_connections

session_id

一對零或一對多

sys.dm_exec_connections

sys.dm_exec_requests

connection_id

一對零或一對一

sys.dm_exec_connections

sys.dm_broker_connections

connection_id

一對零或一對一

範例

A. 傳回目前連接的相關資訊

下列範例會傳回目前連接的基本資訊:網路傳輸通訊協定、驗證機制和加密設定。

SELECT net_transport, auth_scheme, encrypt_option
FROM sys.dm_exec_connections
WHERE session_id=@@SPID;
GO

B. 識別連接伺服器的用戶端

下列範例會傳回伺服器的連接數,並顯示每個連接的來源 IP 位址以及通訊埠。

SELECT session_id, client_net_address, client_tcp_port
FROM sys.dm_exec_connections;
GO

請參閱

參考

將 SQL Server 2000 系統資料表對應至 SQL Server 2005 系統檢視
動態管理檢視和函數
執行相關動態管理檢視和函數

說明及資訊

取得 SQL Server 2005 協助

變更歷程記錄

版本 歷程記錄

2006 年 12 月 12 日

新增內容:
  • 新增對應至 sys.sysprocesses 系統資料表的相關資訊。
  • 加入範例。
變更的內容:
  • 更正 auth_scheme 資料行的描述。

2006 年 4 月 14 日

變更的內容:
  • SQL Server 2005 Service Pack 1 的 client_net_addresslocal_net_address 資料類型已進行了擴充。