ВУЗ:
Составители:
Рубрика:
В папках Locks/Process ID и Locks/Object содержится одна и та же информация,
сгруппированная соответственно по процессам и по объектам:
Process ID – идентификационный номер процесса;
Object – имя блокированного объекта;
Lock Type – тип блокировки: базы данных (DB), таблица (TAB), экстент (EXT), страница
(PAG), диапазон ключа (KEY) и строка (RID);
Mode – вид блокировки:
S – коллективная блокировка;
V – блокировка обновления;
X – монопольная блокировка;
IS, IX, SIX – блокировки намерения;
Sch-C, Sch-M – блокировки схемы;
BV – блокировка массового обновления;
Status – статус блокировки:
GRANT – блокировка установлена и успешно работает;
WAIT – блокировка ожидает ресурса;
CNVT – выполняется конвертирование блокировки;
Owner – владелец блокировки: Sess – сессия, Xact – транзакция, Curs – курсор;
Index – имя индекса, связанного с ресурсом;
Resource – идентификатор заблокированного ресурса.
Задание 2. Используя системные хранимые процедуры sp_lock, sp_who и команды
Transact – SQL DBCC OPENTRANT, DB_ID, произвести мониторинг текущих блокировок сервера.
Описание процедур и команд найти в документации.
Лабораторная работа №15
Создание, применение и управление курсорами
Цель работы – изучение назначения и типов курсоров, синтаксиса и семантики команд
языка Transact – SQL для создания и открытия курсоров, выборки данных из курсора и изменения
строк таблиц с помощью курсоров, удаления данных, закрытия и освобождения курсоров, а также
приобретения навыков их применения и управления с помощью команд и системных хранимых
процедур SQL Server 2000.
Набор данных, имеющийся в таблице базы данных, называется полным набором строк
таблицы (complete set of rows). Набор строк, возвращаемый команду SELECT, называется
результирующим набором данных (result set). Он является частью полного набора,
отфильтрованного горизонтально с помощью условий, заданных в разделе WHERE. Можно в
результирующий набор не включать те или иные столбцы, применяя вертикальную фильтрацию.
Результирующие наборы могут содержать сотни тысяч строк, и клиентские приложения
не всегда справляются с таким объемом данных. Для решения этой проблемы используются
курсоры, которые представляют собой окна, налагаемые на результирующие набором данных и
выделяющие требуемую часть данных. Перемещая созданный курсор, можно получить доступ ко
всем результирующим данным. Таким образом, курсоры SQL Server 2000 представляют собой
механизм обмена данными между сервером и клиентом, который минимизирует ресурсы
клиентского приложения. Однако всегда, когда это возможно, следует избегать использования
курсоров и применять команды SELECT, UPDATE, DELETE и INSERT.
MS SQL Server 2000 поддерживает три вида курсоров:
В папках Locks/Process ID и Locks/Object содержится одна и та же информация,
сгруппированная соответственно по процессам и по объектам:
Process ID – идентификационный номер процесса;
Object – имя блокированного объекта;
Lock Type – тип блокировки: базы данных (DB), таблица (TAB), экстент (EXT), страница
(PAG), диапазон ключа (KEY) и строка (RID);
Mode – вид блокировки:
S – коллективная блокировка;
V – блокировка обновления;
X – монопольная блокировка;
IS, IX, SIX – блокировки намерения;
Sch-C, Sch-M – блокировки схемы;
BV – блокировка массового обновления;
Status – статус блокировки:
GRANT – блокировка установлена и успешно работает;
WAIT – блокировка ожидает ресурса;
CNVT – выполняется конвертирование блокировки;
Owner – владелец блокировки: Sess – сессия, Xact – транзакция, Curs – курсор;
Index – имя индекса, связанного с ресурсом;
Resource – идентификатор заблокированного ресурса.
Задание 2. Используя системные хранимые процедуры sp_lock, sp_who и команды
Transact – SQL DBCC OPENTRANT, DB_ID, произвести мониторинг текущих блокировок сервера.
Описание процедур и команд найти в документации.
Лабораторная работа №15
Создание, применение и управление курсорами
Цель работы – изучение назначения и типов курсоров, синтаксиса и семантики команд
языка Transact – SQL для создания и открытия курсоров, выборки данных из курсора и изменения
строк таблиц с помощью курсоров, удаления данных, закрытия и освобождения курсоров, а также
приобретения навыков их применения и управления с помощью команд и системных хранимых
процедур SQL Server 2000.
Набор данных, имеющийся в таблице базы данных, называется полным набором строк
таблицы (complete set of rows). Набор строк, возвращаемый команду SELECT, называется
результирующим набором данных (result set). Он является частью полного набора,
отфильтрованного горизонтально с помощью условий, заданных в разделе WHERE. Можно в
результирующий набор не включать те или иные столбцы, применяя вертикальную фильтрацию.
Результирующие наборы могут содержать сотни тысяч строк, и клиентские приложения
не всегда справляются с таким объемом данных. Для решения этой проблемы используются
курсоры, которые представляют собой окна, налагаемые на результирующие набором данных и
выделяющие требуемую часть данных. Перемещая созданный курсор, можно получить доступ ко
всем результирующим данным. Таким образом, курсоры SQL Server 2000 представляют собой
механизм обмена данными между сервером и клиентом, который минимизирует ресурсы
клиентского приложения. Однако всегда, когда это возможно, следует избегать использования
курсоров и применять команды SELECT, UPDATE, DELETE и INSERT.
MS SQL Server 2000 поддерживает три вида курсоров:
Страницы
- « первая
- ‹ предыдущая
- …
- 61
- 62
- 63
- 64
- 65
- …
- следующая ›
- последняя »
