共用方式為


sys.syslockinfo (Transact-SQL)

包含所有授與、轉換及等待鎖定要求的相關資訊。

重要事項重要事項

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

重要事項重要事項

這項功能已變更,與舊版 SQL Server 不同。如需詳細資訊,請參閱<SQL Server 2008 R2 中對於 Database Engine 的重大變更>。

資料行名稱

資料類型

描述

rsc_text

nchar(32)

鎖定資源的文字描述。包含鎖定資源的一部份。

rsc_bin

binary(16)

二進位鎖定資源。包含內含於鎖定管理員的實際鎖定資源。這個資料行是針對可以辨識鎖定資源格式的工具而併入的,這種格式可用來產生這些工具它們自己的格式化鎖定資源,並可在 syslockinfo 上執行自我聯結。

rsc_valblk

binary(16)

鎖定值區塊。某些資源類型可能會將其他資料併入某鎖定資源中,而該鎖定資源並非由鎖定管理員雜湊以決定特定鎖定資源的擁有權。例如,頁面鎖定不是由特定物件識別碼擁有。適用於鎖定擴大和其他用途。不過,頁面鎖定的物件識別碼可以併入鎖定值區塊中。

rsc_dbid

smallint

資源所關聯的資料庫識別碼。

rsc_indid

smallint

資源所關聯的索引識別碼 (如果適用的話)。

rsc_objid

int

資源所關聯的物件識別碼 (如果適用的話)。

rsc_type

tinyint

資源類型:

1 = NULL 資源 (未使用)

2 = 資料庫

3 = 檔案

4 = 索引

5 = 資料表

6 = 頁面

7 = 索引鍵

8 = 範圍

9 = RID (資料列識別碼)

10 = 應用程式

rsc_flag

tinyint

內部資源旗標。

req_mode

tinyint

鎖定要求模式。這個資料行是要求者的鎖定模式,且代表授與模式,或者,轉換或等待模式。

0 = NULL。未授與資源的任何存取權。這用來作為預留位置。

1 = Sch-S (結構描述穩定性)。確定在任何工作階段持有結構描述元素的結構描述穩定性鎖定時,不卸除結構描述元素,如資料表或索引。

2 = Sch-M (結構描述修改)。想要變更指定資源結構描述的任何工作階段都必須持有這個項目。請確定沒有其他工作階段在參考指示的物件。

3 = S (共用)。持有它的工作階段,會取得資源的共用存取權。

4 = U (更新)。表示取得最終可能會更新之資源的更新鎖定。它用來防止當多個工作階段為了未來可能更新資源而鎖定資源時,所常見的死結形式。

5 = X (獨佔)。持有它的工作階段,會取得資源的獨佔存取權。

6 = IS (意圖共用)。表示在鎖定階層中的某些從屬資源上設定 S 鎖定的意圖。

7 = IU (意圖更新)。表示在鎖定階層中的某些從屬資源上設定 U 鎖定的意圖。

8 = IX (意圖獨佔)。表示在鎖定階層中的某些從屬資源上設定 X 鎖定的意圖。

9 = SIU (共用意圖更新)。表示意圖取得鎖定階層中從屬資源的更新鎖定之共用資源存取權。

10 = SIX (共用意圖獨佔)。表示意圖取得鎖定階層中從屬資源的獨佔鎖定之共用資源存取權。

11 = UIX (更新意圖獨佔)。表示意圖取得鎖定階層中從屬資源的獨佔鎖定之資源更新鎖定。

12 = BU。供大量作業使用。

13 = RangeS_S (共用索引鍵範圍和共用資源鎖定)。指出可序列化的範圍掃描。

14 = RangeS_U (共用索引鍵範圍和更新資源鎖定)。指出可序列化的更新掃描。

15 = RangeI_N (插入索引鍵範圍和 NULL 資源鎖定)。在將新索引鍵插入索引之前,用來測試範圍。

16 = RangeI_S. 索引鍵範圍鎖定,由 RangeI_N 和 S 鎖定的重疊建立。

17 = RangeI_U. 索引鍵範圍轉換鎖定,由 RangeI_N 和 U 鎖定的重疊建立。

18 = RangeI_X. 索引鍵範圍轉換鎖定,由 RangeI_N 和 X 鎖定的重疊建立。

19 = RangeX_S. 索引鍵範圍轉換鎖定,由 RangeI_N 和 RangeS_S. 鎖定的重疊建立。

20 = RangeX_U. 索引鍵範圍轉換鎖定,由 RangeI_N 和 RangeS_U 鎖定的重疊建立。

21 = RangeX_X (獨佔索引鍵範圍和獨佔資源鎖定)。這是更新範圍中的索引鍵時所用的轉換鎖定。

req_status

tinyint

鎖定要求的狀態:

1 = 授與

2 = 轉換中

3 = 等待中

req_refcnt

smallint

鎖定參考計數。每當交易要求對特定資源的鎖定時,參考計數就會累加。參考計數等於 0 之前不會釋放鎖定。

req_cryrefcnt

smallint

保留供日後使用。一律設為 0。

req_lifetime

int

鎖定存留期間點陣圖。在某些查詢處理策略進行期間,必須維持對資源的鎖定,直到查詢處理器已完成特定的查詢階段為止。查詢處理器和交易管理員會利用鎖定存留期間點陣圖,指出某查詢階段的執行已完成時可以釋放的鎖定群組。點陣圖中的某些位元用來指出即使其參考計數等於 0 也會一直保留到交易結束為止的鎖定。

req_spid

int

要求鎖定之工作階段的內部 Microsoft SQL Server Database Engine 處理序識別碼。

req_ecid

int

執行內容識別碼 (ECID)。用來指出平行作業中的哪個執行緒擁有特定鎖定。

req_ownertype

smallint

關聯於鎖定的物件類型。

1 = 交易

2 = 資料指標

3 = 工作階段

4 = ExSession

請注意,3 和 4 分別代表特殊版本的工作階段鎖定、追蹤資料庫和檔案群組鎖定。

req_transactionID

bigint

用在 syslockinfo 和 Profiler 事件中的唯一交易識別碼

req_transactionUOW

uniqueidentifier

識別 DTC 交易的工作單位識別碼 (UOW)。如果是非 MS DTC 交易,UOW 設為 0。

權限

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