当前位置:Gxlcms > 数据库问题 > SQL2005中的事务与锁定(三)- 转载

SQL2005中的事务与锁定(三)- 转载

时间:2021-07-01 10:21:17 帮助过:2人阅读

Proc sp_us_lockinfo --------------------------------------------------------------------- -- Author : HappyFlyStone -- Date : 2009-10-03 15:30:00 -- BLOG : http://blog.csdn.net/happyflystone -- 申明 :请保留作者信息,转载注明出处 -------------------------------------------------------------------- AS BEGIN SELECT DB_NAME(t1.resource_database_id) AS [数据库名], t1.resource_type AS [资源类型], -- t1.request_type AS [请求类型], t1.request_status AS [请求状态], -- t1.resource_description AS [资源说明], CASE t1.request_owner_type WHEN TRANSACTION THEN 事务所有 WHEN CURSOR THEN 游标所有 WHEN SESSION THEN 用户会话所有 WHEN SHARED_TRANSACTION_WORKSPACE THEN 事务工作区的共享所有 WHEN EXCLUSIVE_TRANSACTION_WORKSPACE THEN 事务工作区的独占所有 ELSE ‘‘ END AS [拥有请求的实体类型], CASE WHEN T1.resource_type = OBJECT THEN OBJECT_NAME(T1.resource_ASsociated_entity_id) ELSE T1.resource_type+:+ISNULL(LTRIM(T1.resource_ASsociated_entity_id),‘‘) END AS [锁定的对象], t4.[name] AS [索引], t1.request_mode AS [锁定类型], t1.request_session_id AS [当前spid], t2.blocking_session_id AS [锁定spid], -- t3.snapshot_isolation_state AS [快照隔离状态], t3.snapshot_isolation_state_desc AS [快照隔离状态描述], t3.is_read_committed_snapshot_on AS [已提交读快照隔离] FROM sys.dm_tran_locks AS t1 left join sys.dm_os_waiting_tasks AS t2 ON t1.lock_owner_address = t2.resource_address left join sys.databases AS t3 ON t1.resource_database_id = t3.database_id left join ( SELECT rsc_text,rsc_indid,rsc_objid,b.[name] FROM sys.syslockinfo a JOIN sys.indexes b ON a.rsc_indid = b.index_id and b.object_id = a.rsc_objid) t4 ON t1.resource_description = t4.rsc_text END GO /* 调用示例:exec sp_us_lockinfo */ exec sp_us_lockinfo /*

技术分享

 

SQL2005中的事务与锁定(三)- 转载

标签:

人气教程排行