§ 24. Использование SQL для построения запросов
24.1. Язык запросов SQL
Мастер запросов и Конструктор — всего лишь визуальные инструменты для создания запросов. Любой запрос, созданный в Access с помощью визуальных инструментов, можно просмотреть в режиме SQL (пример 24.1). В этом режиме запрос отображается как запись на языке SQL (англ. Structured Query Language — структурированный язык запросов). SQL является важнейшим компонентом технологии реляционных баз данных и поддерживается практически всеми системами управления БД. Любому профессионалу, как квалифицированному пользователю баз данных, так и прикладному программисту или администратору БД, необходимо знать SQL. Некоторые возможности языка SQL: 1. Создание, изменение и удаление таблиц БД. SQL нельзя отнести к традиционным языкам программирования. Он является декларативным языком, предназначенным для описания, изменения и извлечения данных. В настоящее время благодаря появлению возможности хранить процедуры, обрабатывать иерархические типы данных и другим расширениям SQL стали называть языком программирования. Достоинства языка SQL: 1. Декларативность — указывает, какие операции нужно выполнить. Способ их реализации выбирается автоматич ески. Недостатки языка SQL: 1. Стандарт языка сложен и объемен. Синтаксис SQL близок к естественному английскому языку. Команды SQL выглядят как обычные предложения английского языка и просты в понимании. Команда SQL состоит из операторов (ключевых слов) и идентификаторов (пример 24.2). Если в запросе несколько команд, то в конце команды ставится точка с запятой (;). В Access одновременно можно выполнить только одну команду SQL, поэтому точку с запятой можно не ставить. Согласно общепринятому стилю для записи ключевых слов рекомендуется использовать прописные буквы. Если идентификатор содержит пробелы, то он заключается в квадратные скобки (пример 24.3). В Access используется интерактивная версия языка SQL — Microsoft Jet SQL. Чтобы создать запрос SQL в Access (пример 24.4), необходимо: 1) перейти в меню Создание; 2) выбрать Конструктор запросов; 3) закрыть окно Добавление таблицы; 4) выбрать Режим SQL; 5) в открывшемся окне ввести текст запроса и при необходимости сохранить запрос; 6) выполнить запрос, нажав кнопку на Панели инструментов. В Access реализованы следующие составные части языка SQL: 1. Язык определения данных (Data Definition Language — DDL). Используется для определения структуры базы данных. |
Пример 24.1. Представление запроса на языке SQL. Таблица БД: Запрос в режиме Конструктор, который позволяет найти сеансы, стоимость билетов на которые не превышает 9 р. 50 к.: Результат запроса (режим таблицы): Запрос SQL: Язык SQL был предложен компанией IBM в начале 70-х гг. для проверки возможностей реляционной модели БД. Разработчики языка запросов SQL:
Первый международный стандарт языка SQL был принят в 1989 г. В настоящее время действует стандарт, принятый в 2003 г. (SQL:2003), с некоторыми модификациями и дополнениями, внесенными позже (SQL:2008, SQL:2011, SQL:2016). SQL является непроцедурным языком программирования. Команды SQL могут выполняться непосредственно в интерактивном режиме, а также встраиваются в базовый язык программирования, которым может быть любой стандартный язык, например C++. Пример 24.2. В запросе SQL из примера 24.1: Операторы SELECT — определяет поля, которые содержат запрашиваемые данные. FROM — определяет таблицу, содержащую поля, указанные в SELECT. WHERE — определяет условия отбора полей, которым должны соответствовать все записи, включаемые в результаты. Идентификаторы полей Сеансы.Кинотеатр, Сеансы.Фильм, Сеансы.Время, Сеансы.Стоимость — содержат адрес (имя объекта БД) и название поля. Пример 24.3. Синтаксис идентификаторов SQL. Запрос:
Результат: Пример 24.4. Создание запроса SQL в Access. Выбор режима SQL: Окно для ввода запроса SQL: |