Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
печать шпор.doc
Скачиваний:
7
Добавлен:
26.09.2019
Размер:
261.12 Кб
Скачать

55.Представления, их создание (команда create view).

Представления – это таблицы, содержимое которых извлекается из других таблиц БД. Представления подобны окнам, через которые просматривается информация, хранимая в БД. Как и любую другую таблицу, представление можно использовать: формулировать к нему запросы, выполнять обновление, вставку, удаление данных и соединение с другими таблицами и представлениями. Представление создается с помощью команды CREATE VIEW. Эта команда не поддерживается СУБД Access.

56.Определение прав доступа (команды grant, revoke).

Каждый пользователь БД имеет определенные права (действия) по отношению к объектам БД. Права могут меняться с те­чением времени: старые могут отменяться, новые — добавляться. Пользо­ватель, создавший таблицу, является ее владельцем. Как владелец, пользо­ватель имеет все права на таблицу и может назначить права для работы с ней другим пользователям. Язык SQL предусматривает права: SELECT (право читать таблицу); INSERT (право добавлять данные в таблицу); UPDATE (право изменять данные таблицы); DELETE (право удалять дан­ные из таблицы); REFERENCES (право определять первичный ключ). Назначение прав осуществляется командой GRANT, а лишение прав—ко­мандой REVOKE. Эти команды не поддерживаются СУБД Access.

57.Работа sql со множеством пользователей. Транзакции и управление ими

В сетевой версии и версии для для SQL многопользовательский режим обеспечивает следующие возможности: одновременная работа нескольких пользователей с одной информационной базой, автоматическое обновление информации на экране при изменении ее другими пользователями, мониторинг работы пользователей, защита от изменений редактируемых объектов. Управление транзакциями. Транзакция – совокурность операций манипулирования данными (вставки, удаления, выборки, обновления) в СУБД, которая переводит БД из одного целостного состояния в другое. В SQL – ТРАНЗАКЦИЯ – НЕСКОЛЬКО КОМАНД, РАССМАТРИВАЕМЫХ, КАК ЕДИНОЕ ЦЕЛОЕ. Для обеспечения целостности данных ис­пользуются средства обработки транзакций - команды COMMIT и ROLLBACK. Команда COMMIT сообщает об успешном окончании тран­закции, а команда ROLLBACK — о неуспешном окончании транзакции и необходимости отмены всех изменений, внесенных в БД в результате вы­полнения транзакции. Эти команды не поддерживаются СУБД Access.

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

Обработка одновременных транзакций называется - параллелизмом или совпадением, и имеет номера возможных проблем которые могут при этом возникать. ни одна команда не должна быть выдана, пока предыдущая не будет завершена (включая команды COMMIT или ROLLBACK ). Более точно, нужно просто не позволить таблице быть доступной более чем для одной транзакции в данный момент времени. Однако в большинстве ситуаций, необходимость иметь базу данных доступную сразу многим пользователям, приводит к некоторому компромису в управлении параллелизмом. Механизм используемый SQL для управления параллелизмом операций, называется - блокировкой. Блокировки задерживают определенные операции в базе данных, пока другие операции или транзакции не завершены. Задержанные операции выстраиваюится в очередь и выполняются только когда блокировка снята ( некоторые инструменты блокировок дают вам возможность указывать NOWAIT, которая будет отклонять команду вместо того чтобы поставить ее в очередь, позволяя вам делать что-нибудь другое). Блокировки в многопользовательских системах необходимы.