КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Set transaction isolation level READ committed
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED SET TRANSACTION ISOLATION LEVEL Часть 4. Понятие уровня изоляции SQL Server Уровень изоляции определяет степень независимости транзакций друг от друга. Наивысшим уровнем изоляции является сериализуемость, обеспечивающая полную независимость транзакций друг от друга. Каждый последующий уровень соответствует требованиям всех предыдущих и обеспечивает дополнительную защиту транзакций. SQL Server поддерживает все четыре уровня изоляции, определенные стандартом ANSI. Уровень изоляции устанавливается командой:
{ READ COMMITTED | READ UNCOMMITTED | REPEATABLE READ | SERIAIZABLE }
Здесь: · READ UNCOMMITED - разрешает чтение незафиксированных, или допускает «грязное» чтение. Запросы, выполняемые с таким уровнем изоляции, будут обнаруживать любое изменение в базе данных независимо от того, зафиксировано это изменение или нет. Это низший уровень изоляции. Он гарантирует только физическую целостность данных: если несколько пользователей одновременно изменяют одну и ту же строку, то в окончательном варианте строка будет иметь значение, определенное пользователем, последним изменившим запись. По сути, для транзакции не устанавливается никакой блокировки, которая гарантировала бы целостность данных. Это наиболее опасный из всех вариантов выбора уровня изоляции. Но он обеспечивает наивысшую производительность (скорость выполнения транзакций). Для установки этого уровня используется команда:
· READ COMMITTED – этот уровень изоляции запрещает транзакциям «грязное чтение» (чтение незафиксированных данных). Он называется «завершенное чтение». Чтение разрешается только после завершения конкурирующей транзакции. Но при этом в процессе работы текущей транзакции другая может вмешиваться, изменять данные, успешно завершить сделанные ею изменения, но при этом ничего не читать. В итоге первая транзакция будет работать с другим набором данных. Это - проблема неповторяемого чтения. Данный уровень изоляции установлен в SQL Server по умолчанию или устанавливается посредством команды:
· REPEATABLE READ - повторяющееся чтение. Всякий раз повторное чтение строки должно (будет) возвращать первоначально считанные данные, несмотря на любые обновления, произведенные другими пользователями до завершения первой транзакции. Тем не менее, на этом уровне изоляции возможно возникновение фантомов. Установка этого уровня изоляции выполняется командой:
Дата добавления: 2014-01-06; Просмотров: 313; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |