Главная Обратная связь Поможем написать вашу работу!

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)






Уровни изоляции SQL-транзакции



В стандарте SQL:1999 уровни изоляции определяются на основе нескольких феноменов, которые могут возникать при выполнении транзакций:

· Феномен «грязного» чтения (dirty read)- Этому феномену подвержены транзакции, в которых допускается возможность видеть изменения объектов базы данных, производимые другими одновременно выполняемыми и еще не зафиксированными транзакциями. В SQL феномен «грязного» чтения может наблюдаться у транзакций, выполняемых на уровне изоляции READ UNCOMMITTED

· Феномен неповторяемого чтения (unrepeatable read) -Этому феномену подвержены транзакции, читающие некоторые объекты базы данных и допускающие изменения уже прочитанных объектов другими транзакциями. В SQL феномен неповторяемого чтения может наблюдаться у транзакций, выполняемых на уровне изоляции READ COMMITTED (этот уровень изоляции, как показывает его название, гарантирует отсутствие феномена «грязного» чтения).

· Феномен фантомов -Этому феномену подвержены транзакции, производящие выборку строк и таблиц базы данных и допускающие добавление к данным таблицам другими транзакциями строк, которые удовлетворяют условию выборки. В SQL феномен фантомов может наблюдаться у транзакций, выполняемых на уровне изоляции REPEATABLE READ (этот уровень изоляции, как показывает его название, гарантирует отсутствие феномена неповторяемого чтения).


Иерархия видов ограничений целостности в SQL.

 

 

В стандарте SQL дополнительные ограничения базы данных называются ASSERTION, т.е. общие ограничения целостности (ограничения БД).

Для определения общего ограничения целостности служит оператор CREATE ASSERTION, задаваемый в следующем синтаксисе:

CREATE ASSERTION constraint_name CHECK (conditional_expression)

 

Пример:

CREATE ASSERTION MIN_EMP_BDATE CHECK ((SELECT MIN(EMP_BDATE)) FROM EMP) >= '1917-10-24')

 

В контексте каждой выполняемой транзакции каждое ограничение целостности должно находиться в одном из двух режимов:

1) немедленной проверки (immediate):проверяются при выполнении в транзакции любой операции, изменяющей состояние базы данных, и, возможно ROLLBACK,



2) отложенной проверки (deferred):проверяются при завершении транзакции (выполнении операции COMMIT).

спецификация INITIALLY для ограничения целостности (любого вида):

INITIALLY { DEFERRED | IMMEDIATE } [ [ NOT ] DEFERRABLE ]

 

Подробнее:

INITIALLY IMMEDIATE - в режиме немедленной проверки,

INITIALLY DEFERRED – находиться в режиме отложенной проверки, а также DEFERRABLE - для данного ограничения м б установлен режим отложенной проверки, NOT DEFERRABLE – что не может,

INITIALLY DEFERRED NOT DEFERRABLE является недопустимой возможности смены режима подразумевается наличие спецификации DEFERRABLE.


 

Поддержка авторизации доступа к данным в SQL. Объекты и привилегии. Пользователи и роли.

1) Метод авторизации в SQL относится к мандатным методам.

2) В SQL – 9 типов привилегий + привилегия на передачу привилегий.

3) Поддерживается принцип сокрытия информации об объектах от субъектов, у которых нет доступа.

4) Субъекты в SQL – пользователи и роли. Роль соответствует динамически определенной группе, каждая из которых отражает привилегии на исполнение данной роли, а также всеми привилегиями данной роли для доступа к объектам БД


Просмотров 364

Эта страница нарушает авторские права




allrefrs.ru - 2021 год. Все права принадлежат их авторам!