Блокировки

REVOKE привелегии ON объект TO пользователь

GRANT привелегии ON объект TO пользователь

Привилегии

DROP VIEW ИмяПредставления

Представления

DROP INDEX имя_индекса

Индексы

Таблицы.

Команды определения данных.

Это команды, позволяющие создавать/удалять таблицы, индексы, представления.

CREATE TABLE базовая_таблица (столбец тип_данных [NOT NULL] ….)

Создать таблицу с указанным набором столбцов. NOT NULL показывает, что столбец не может быть пустым.

CREATE TABLE Сотрудник (Фамилия CHAR(50) NOT NULL)

DROP TABLE базовая_таблица

Удалить таблицу

Индексы позволяют выполнять более быстрый поиск по таблице.

CREATE [UNIQUE] INDEX имя_индекса

ON Базовая_Таблица (столбец [[ASC]/DESC]…)

Создать индекс на основе таблицы и указанных столбцов таблицы.

Удалить индекс

CREATE INDEX Тема

ON КнижныйФонд (Тема ASC)

Представление - это временная таблица в БД, отажающая необходимые в данный момент пользователю данные. Необходимы представления для того, чтобы:

§ пользователь мог видеть только те данные, что необходимы (на какие есть права)

§ обеспечетить независимость работы программ.

CREATE VIEW ИмяПредставления (столбец…)

AS подзапрос [WITH CHECK OPTIONS]

Создать представление.

Удалить представление.

CREATE VIEW Назначение (ФИО, Должность)

AS SELECT ФИО, Должность, КодДолжности

FROM Сотрудник UNION Должность.

Установить/снять привелегии.

 
Управление параллельным доступом.

Параллельный доступ - это ситуация, возникающая когда несколько транзакций обращаются к одним данным одновременно. Проблема доступа в том, что необходима полная изолированность пользователей.

Изолированность - это создание иллюзии, что каждый пользователь работает с БД самостоятельно.

3 уровня изолированности:

1. Отсутствие потерянных изменений

Транзакция1 Транзакция2
READ A A=A+1 WRITE A COMMIT READ A A=A+1 ROLLBACK

ROLLBACK из второй транзакции откатит и изменения, сделанный первой транзакцией.

До завершения транзакции1 нельзя менять объект, с которым работает транзакция

2. Отсутствие чтения «грязных» данных

Транзакция1 Транзакция2
READ A A=A+1 WRITE A ROLLBACK ... ... ... READ A A=A-1

Никакая транзакция не должна читать объект до завершения изменений.

3. Отсутствие неповторяющихся чтений

Транзакция1 Транзакция2
READ A A=A+1 WRITE A READ A A=A-1 ... WRITE A

Средства управления транзакциями: блокировки и метод временных меток.

Блокировка- запрет на доступ к ресурсу. Заблокировать можно поле, кортеж, отношение, группу отношений или всю базу.

LOCK A - заблокировать ресурс А

UNLOCK A - разблокировать ресурс А


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: