Поделиться через


sys.syslockinfo (Transact-SQL)

Содержит сведения обо всех удовлетворенных, преобразованных и ожидающих запросах на блокировку.

ms189497.note(ru-ru,SQL.90).gifВажно!
Эта системная таблица SQL Server 2000 включена в СУБД как представление для обеспечения обратной совместимости. Вместо нее рекомендуется использовать системные представления SQL Server. Сведения о том, как найти эквивалентное представление, см. в разделе Сопоставление системных таблиц SQL Server 2000 и системных представлений SQL Server 2005. В будущей версии Microsoft SQL Server эта возможность будет удалена. Избегайте использования этой возможности в новых разработках и запланируйте изменение существующих приложений, в которых она применяется.
ms189497.note(ru-ru,SQL.90).gifВажно!
Данная функция изменилась по сравнению с более ранними версиями SQL Server. Дополнительные сведения см. в разделе Критические изменения в функциях компонента SQL Server 2005 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-S (блокировка изменения схемы). Должна поддерживаться любым сеансом, во время которого предполагается изменить схему указанного ресурса. Заверяет, что другие сеансы не имеют ссылок на указанный объект.

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_S (совмещаемая блокировка диапазон ключей и блокировка обновления ресурса). Указывает на последовательный просмотр для обновления.

15 = RangeS_S (блокировка диапазона ключей на вставку и блокировка Null для ресурса). Используется для проверки диапазонов перед вставкой нового ключа в индекс.

16 = RangeI_S. Блокировка диапазона ключей на преобразование, созданная пересечением блокировок RangeI_N и S.

17 = RangeI_U. Блокировка диапазона ключей на преобразование, созданная пересечением блокировок RangeI_N и U.

18 = RangeI_X. Блокировка диапазона ключей на преобразование, созданная пересечением блокировок RangeI_N и X.

19 = RangeIX_S. Блокировка диапазона ключей на преобразование, созданная пересечением блокировок RangeI_N и RangeS_S.

20 = RangeIX_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 = Экс-сеанс.

Обратите внимание, что 3 и 4 представляют собой особые варианты блокировки сеанса, соответственно блокировки трассировки базы данных и файловых групп.

req_transactionID

bigint

Уникальный идентификатор транзакции, используемый в таблице syslockinfo и в событии профайлера.

req_transactionUOW

uniqueidentifier

Определяет идентификатор единицы работы (UOW) транзакции DTC. Для транзакций, отличных от MS DTC, UOW равен 0.

Разрешения

Требует разрешения VIEW SERVER STATE на сервере.

См. также

Справочник

Соответствия между системными таблицами SQL Server 2000 и системными представлениями SQL Server 2005
Представления совместимости (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005