sys.sysprocesses (Transact-SQL)

適用於:SQL Server

包含 SQL Server 實例上執行之進程的相關資訊。 這些進程可以是用戶端進程或系統進程。 若要存取 sysprocesses,您必須位於 master 資料庫內容中,或者必須使用 master.dbo.sysprocesses 三部分名稱。

重要

此 SQL Server 2000 系統資料表隨附為回溯相容性的檢視。 建議您改用目前的 SQL Server 系統檢視。 若要尋找對等的系統檢視或檢視,請參閱 將系統資料表對應至系統檢視表(Transact-SQL)。 未來的 Microsoft SQL Server 版本將移除這項功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。

資料行名稱 資料類型 描述
spid smallint SQL Server 會話識別碼。
kpid smallint Windows 執行緒識別碼。
已封鎖 smallint 封鎖要求之工作階段的識別碼。 如果這個資料行是 NULL,表示要求沒有被封鎖,或者封鎖工作階段的工作階段資訊無法使用 (或無法識別)。

-2 = 封鎖資源是由孤立的分散式交易所擁有。

-3 = 封鎖資源是由延後復原交易所擁有。

-4 = 由於內部閂鎖狀態轉換,無法判斷封鎖閂鎖擁有者的會話識別碼。
waittype binary(2) 保留。
waittime bigint 目前的等候時間以毫秒為單位。

0 = 進程未等候。
lastwaittype Nchar(32) 字串,表示最後一個或目前等候類型的名稱。
waitresource Nchar(256) 鎖定資源的文字表示。
dbid smallint 進程目前正在使用之資料庫的識別碼。
uid smallint 執行命令的使用者識別碼。 如果使用者和角色的數目超過 32,767,則溢位或傳回 Null。
cpu int 進程的累計 CPU 時間。 不論 SET STATISTICS TIME 選項為 ON 或 OFF,所有進程都會更新專案。
physical_io bigint 進程的累計磁片讀取和寫入。
memusage int 程式快取中目前配置給此進程的頁數。 負數表示進程正在釋放另一個進程所配置的記憶體。
login_time datetime 用戶端進程登入伺服器的時間。
last_batch datetime 上次用戶端進程執行遠端預存程序呼叫或 EXECUTE 語句時。
ecid smallint 執行內容識別碼,用來唯一識別代表單一進程運作的子執行緒。
open_tran smallint 進程的開啟交易數目。
status Nchar(30) 進程識別碼狀態。 可能的值是:

休眠 = SQL Server 正在重設會話。

running = 會話正在執行一或多個批次。 啟用多個作用中結果集 (MARS) 時,會話可以執行多個批次。 如需詳細資訊,請參閱使用 Multiple Active Result Sets (MARS)

background = 會話正在執行背景工作,例如死結偵測。

rollback = 會話在處理中具有交易回復。

pending = 會話正在等候背景工作執行緒可供使用。

runnable = 會話中的工作是在排程器的可執行佇列中,而等候取得時間量子。

spinloop = 會話中的工作正在等候執行緒同步鎖定變成可用。

suspended = 會話正在等候 I/O 等事件完成。
binary(86) 使用者的全域唯一識別碼 (GUID)。
hostname Nchar(128) 工作站的名稱。
program_name Nchar(128) 應用程式的名稱。
hostprocess Nchar(10) 工作站進程識別碼。
cmd Nchar(52) 目前正在執行的命令。
nt_domain Nchar(128) 如果使用 Windows 驗證或受信任的連線,則用戶端的 Windows 網域。
nt_username Nchar(128) 如果使用 Windows 驗證或受信任的連線,則進程的 Windows 使用者名稱。
net_address Nchar(12) 在每個使用者工作站上指派網路介面卡的唯一識別碼。 當使用者登入時,此識別碼會插入net_address資料行中。
net_library Nchar(12) 儲存用戶端網路程式庫的資料行。 每個用戶端進程都會出現在網路連線上。 網路連線具有與其相關聯的網路程式庫,可讓它們進行連線。
loginame Nchar(128) 登入名稱。
coNtext_info binary(128) 使用 SET CONTEXT_INFO 語句儲存在批次中的資料。
sql_handle binary(20) 表示目前正在執行的批次或物件。

注意 這個值衍生自 物件的批次或記憶體位址。 此值不會使用 SQL Server 雜湊型演算法來計算。
stmt_start int 指定之sql_handle之目前 SQL 語句的起始位移。
stmt_end int 指定之sql_handle之目前 SQL 語句的結束位移。

-1 = 目前語句會針對指定的sql_handle執行fn_get_sql函式所傳回的結果結尾。
request_id int 要求的識別碼。 用來識別在特定會話中執行的要求。
page_resource binary(8) 適用于:SQL Server 2019 (15.x)

如果 waitresource 資料行包含頁面,則為頁面資源的 8 位元組十六進位標記法。

備註

如果使用者在伺服器上具有 VIEW SERVER STATE 許可權,使用者就會在 SQL Server 實例中看到所有執行中的會話;否則,使用者只會看到目前的會話。

另請參閱

執行相關的動態管理檢視和函數 (Transact-SQL)
將系統資料表對應至系統檢視 (Transact-SQL)
相容性檢視 (Transact-SQL)