logo
4 курс / 1 семестр / ГИС / Лурье И

2.4.4. Язык реляционных баз данных SQL — функции и основные возможности

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

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

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

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