Главная страница Случайная лекция Мы поможем в написании ваших работ! Порталы: БиологияВойнаГеографияИнформатикаИскусствоИсторияКультураЛингвистикаМатематикаМедицинаОхрана трудаПолитикаПравоПсихологияРелигияТехникаФизикаФилософияЭкономика Мы поможем в написании ваших работ! |
Механизм транзакцийТранзакция – группа команд, которые либо выполняются все вместе, либо не выполняется ни одной.
Основная цель транзакций – это предотвратить непоправимые последствия ошибок, которые вызывают сбой в системе.
Пример Если мы хотим удалить поставщика, то надо удалить его из таблицы S, однако может оказаться, что среди поставок может оказаться поставки этого поставщика, следовательно, нужно отменить его поставки, либо передать их другому поставщику.
Для решения этой проблемы нужно: 1. обновление таблицы поставок 2. удаление поставщика
Если после выполнения первой команды произойдет сбой, то удаление поставщика не выполнилось до конца, следовательно, получилось, что поставки скорректированы, а поставщик не удален.
Для управления транзакций в SQL существуют две конструкции: 1. COMMIT WORK – зафиксировать все изменения, выполненные в ходе транзакции 2. ROLLBACK WORK – отменить все изменения, выполненные в ходе транзакции
Режим автоматического фиксирования правильных транзакций SET AUTOCOMMIT ON, отмена SET AUTOCOMMIT OFF
Параллельное выполнение транзакций на уровне SQL также рассматривается.
Если выполняются две параллельные транзакции, которые не используют один и тот же ресурс, то проблем нет.
В SQL вводится понятии блокировки LOCK. Блокировка накладывает ограничения на некоторые операции базы данных, если при этом выполняются другие операции.
Существуют два вида блокировки: 1. S-Locks – распределяемая блокировка 2. X-Locks – исключительная блокировка
S-Locks в единицу времени может выполняться более чем одним пользователем, предоставляет многим пользователям доступ к одним и тем же данным, не изменяя их X-Locks запрещает доступ к данным пользователям, кроме того, чья блокировка выполняется в данный момент.
Дата добавления: 2014-08-04; просмотров: 370; Нарушение авторских прав Мы поможем в написании ваших работ! |