Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КИТ ШПОРЫ-1.docx
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
225.74 Кб
Скачать

8.59 Возможности языка sql по определению д, внесению изменений в бд, извлечению д из базы.

Сам по себе SQL не явл ни СУБД, ни отдел програм продуктом. SQL – это неотъемлем часть СУБД, инструмент, с помощью которого осуществляется связь пользователя с ней.

SQL выполняет множество функций:

· SQL – язык интерактивных запросов. Пользователи вводят команды SQL в интерактивн режиме для выборки Д и отображ их на экране, а также внесения изменений в БД.

· SQL – язык программирования БД. Чтобы получ доступ к БД, в прикладн программы вставляются команды SQL.

· SQL – язык администрирования баз данных.

· SQL – язык создания приложений клиент/сервер.

Для описания форматов команд языка SQL используем так называемую форму Бэкуса-Наура (БНФ), в которой приняты следующие обозначения:

· < > (угловые скобки) – то, что в них указано, определяет пользователь;

· [ ] (квадратные скобки) – выделяют те части команды, которые могут отсутствовать;

· { } (фигурные скобки) – объединяют последовательность элементов в логическую группу;

· ... (многоточие) – указывает на допустимость повторения элемента или группы элементов один или несколько раз;

· ½ (вертикальная черта) – означает альтернативный выбор;

· ( ) (круглые скобки) – заключают аргументы команды;

· (пробелы) – используются для разделения элементов команды.

К категории Описание данных относятся команды, позволяющие создавать, изменять и уничтожать БД и объекты БД.

(CREATE TABLE, DROP TABLE, ALTER TABLE, CREATE VIEW)

К категории Внесение изменений в БД относятся команды, позволяющие добавлять, удалять и модифицировать данные в таблицах. (INSERT, DELETE, UPDATE)

Категория Извлечение Д состоит из одной команды SELECT, применяется при формировании всех запросов выбора.

8.60 Понятие и типы транзакции. Обработка транзакций в sql.

Транзакция – это совокупность операций манипулирования данными в системе баз данных, которая переводит базу данных из одного целостного состояния в другое.

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

В языке SQL обработка транзакций реализована с помощью двух команд: COMMIT и ROLLBACK. Они управляют изменениями, выполненными группой команд. Команда COMMIT сообщает об успешном окончании транзакции. Она информирует СУБД о том, что транзакция завершена, все ее команды выполнены успешно и противоречия в БД не возникли. Команда ROLLBACK сообщает о неуспешном окончании транзакции. Она информирует СУБД о том, что пользователь не хочет завершать транзакцию, и СУБД должна отменить все изменения, внесенные в БД в результате выполнения транзакции. В этом случае СУБД возвращает БД в состояние, в котором она находилась до выполнения транзакции.

Команды COMMIT и ROLLBACK используются в основном в программном режиме, хотя возможно их использование и в интерактивном режиме.

8.61 Управление доступом к данным: привилегии, их назначение и отмена.

К категории Управление доступом относятся команды для осуществления административных функций, присваивающих или отменяющих право (привилегию) использовать таблицы в БД определенным образом. Каждый пользователь БД имеет определенные права по отношению к объектам БД. Права – это те действия с объектом, которые может выполнять пользователь. Права могут меняться с течением времени: старые могут отменяться, новые – добавляться. Стандартом языка SQL предусмотрены следующие права:

· SELECT – право читать таблицу;

· INSERT – право добавлять данные в таблицу;

· UPDATE – право изменять данные таблицы;

· DELETE – право удалять данные из таблицы;

· REFERENCES – право определять первичный ключ.

Пользователь, создавший таблицу, является ее владельцем. Как владелец, пользователь имеет все права на таблицу и может назначить права для работы с ней другим пользователям. Кроме владельца, права может назначать администратор БД.

Например,  по команде

REVOKE   UPDATE ON Сведения TO ГИЛЬ

отменяется право обновления таблицы Сведения пользователю ГИЛЬ.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]