Cтраница 4
Если требуется обновить данные, SQL-сервер может выбирать между прямым обновлением, называемым также операцией обновления на месте ( update-in - place operation), и отложенным обновлением. Выполняя прямое обновление, SQL-сервер воздействует непосредственно на данные, содержащиеся в таблице. В отложенном обновлении SQL-сервер вначале удаляет исходную строку таблицы, а затем вводит вместо нее новую. [46]
Когда запрашивается GROUP BY, SQL-сервер разбивает запрос, по меньшей мере, на два шага. На первом шаге находятся все необходимые строки и заносятся в рабочую таблицу. Вторая часть запроса группирует строки и выбирает их из рабочей таблицы. [47]
Когда задана установка UPDLOCK, SQL-сервер вместо более мягких разделяемых блокировок ( установка по умолчанию) применяет блокировки обновления для всех нужных страниц. [48]
Среди всех основных реляционных СУБД SQL-сервер предлагает администраторам и разработчикам баз данных наибольшее количество типов данных. Рассмотрим, как некоторые из них воздействуют на структуру и производительность баз данных. [49]
Начиная с версии 6.5, SQL-сервер предлагает новое средство, повышающее надежность транзакций, которые выполняются более чем на одной станции. Если говорят, что транзакция распределена, то подразумевают, что в выполнении работы, связанной с этой транзакцией, участвует несколько систем. [50]
Ранее было описано, как SQL-сервер применяет обновляющую блокировку для резервирования страницы, которую необходимо изменить. Изменить в данном контексте означает ввести, обновить или удалить информацию. Когда первым в операции обновления данных идет оператор SELECT, то вместо более привычных разделяемых блокировок в этом операторе можно указать обновляющие. Применение в запросе обновляющих блокировок гарантирует, что данные, к которым обращается запрос, не будут изменены другими пользователями или процессами. Обновляющие блокировки сохраняют исходное состояние данных до их обновления. [51]
С помощью этой глобальной переменной SQL-сервер контролирует число активных транзакций. [52]
Выполняя команду DBCC SHOWCONTIG, SQL-сервер подсчитывает количество свободных байтов на каждой странице и выводит среднее число. В нашем случае среднее число неиспользуемых байтов равно 33 на страницу. Высокое значение этого показателя свидетельствует с том, что страницы заполнены не совсем верно. [53]