Язык запросов
База данных бесполезна, если отсутствуют средства доступа к информации в ней. Для получения информации из БД пользователи направляют
СУБД-запросы. СУБД обрабатывает их и отправляет результаты обработки пользователям. Запросы формулируются на специальном «языке запросов». Фактическим стандартом такого языка для современных реляционных СУБД стал SQL (Structured Query Language – структурный язык запросов).
Этот язык имеет официальный стандарт, последняя версия которого была принята ANSI и ISO в 1992 году. Большинство разработчиков СУБД придерживаются этого стандарта. Тем не менее они часто расширяют его для реализации специальных возможностей обработки данных. SQL – это не язык программирования в традиционном смысле. Это язык запросов к базе данных. С его помощью можно сформулировать, какие данные требуется получить, но невозможно определить, как это следует сделать. На SQL не пишутся программы – в нем отсутствуют многие операторы процедурных языков программирования, например, операторы проверки условия (if...then...else), операторы циклов и др.
В составе SQL могут быть выделены следующие группы инструкций:
• язык описания данных – DDL (Data Definition Language);
• язык манипулирования данными – DML (Data Manipulation Language);
• язык управления транзакциями.
Инструкции DDL (табл. 2.1) предназначены для создания, изменения и удаления объектов базы данных.
Таблица 2.1. Инструкции языка определения данных (DDL)
Инструкция | Назначение |
CREATE | Создание новых объектов (таблиц, полей, индексов и т. д.) |
DROP | Удаление объектов |
ALTER | Изменение объектов |
Инструкции DML (табл. 2.2) позволяют выбирать данные из таблиц, а также добавлять, удалять и изменять их.
Таблица 2.2. Инструкции языка манипулирования данными (DML)
Инструкция | Назначение |
SELECT | Выбрать данные из БД |
INSERT | Добавить данные в БД |
UPDATE | Обновить данные в БД |
DELETE | Удалить данные из БД |
SELECT – команда на выборку записей из базы данных – является наиболее часто используемой SQL-инструкцией.
Третьей составной частью SQL является язык управления транзакциями. Транзакция – это логически завершенная единица работы, содержащая одну или более элементарных операций обработки данных. Все действия, составляющие транзакцию, должны либо выполниться полностью, либо полностью не выполниться. Инструкции языка управления транзакциями приведены
в табл. 2.3.
Таблица 2.3. Инструкции языка управления транзакциями
Инструкция | Назначение |
COMMIT | Зафиксировать текущую транзакцию |
SAVEPOINT | Начало транзакции |
ROLLBACK | Прервать текущую транзакцию |
В большинстве СУБД элементарные команды, составляющие тело транзакции, выполняются над некоторой буферной копией данных, и только если их удается успешно довести до конца, происходит окончательное обновление основной базы. Транзакция начинается от точки сохранения, задаваемой инструкцией SAVEPOINT, и может быть завершена по команде COMMIT или прервана по команде ROLLBACK (откат). Также в современных системах управления данными предусмотрены средства автоматического отката транзакций при возникновении системных сбоев. Таким образом, механизм управления транзакциями является важнейшим инструментом поддержания целостности
данных.
Дата добавления: 2015-08-08; просмотров: 1016;