在SQL Server中,可以通过查询系统视图sys.dm_tran_locks来查看表是否被锁定。
以下是一个示例查询,用于查看指定表是否被锁定:
SELECT
object_name(p.object_id) AS TableName,
resource_type AS ResourceType,
request_type AS RequestType,
request_session_id AS RequestSessionID,
request_status AS RequestStatus
FROM sys.dm_tran_locks l
JOIN sys.partitions p ON l.resource_associated_entity_id = p.hobt_id
WHERE object_name(p.object_id) = 'YourTableName'
请将“YourTableName”替换为要检查的表名。这将返回指定表的锁定信息,包括资源类型、请求类型、请求会话ID和请求状态等。
如果该表被锁定,将会显示相关的锁定信息。如果没有显示任何结果或结果为空,那么该表当前没有被锁定。