Чтение онлайн

на главную - закладки

Жанры

Access 2002. Самоучитель
Шрифт:

Глава 11 Программирование на языке SQL

Как уже говорилось в главе 9, главной «специальностью» языка SQL является конструирование запросов пользователя к базе данных. Поэтому программирование на языке SQL – это в основном формирование таких запросов.

Типы запросов

Запрос SQL – это запрос, создаваемый при помощи инструкций SQL [15] .

Запросы являются основным средством просмотра, изменения и анализа информации, которая содержится в одной или в нескольких таблицах базы данных. В этой главе, а также в главах 10 и 12, рассматриваются запросы, относящиеся к предметной области, обсуждаемой в настоящей книге.

Перечислим важнейшие типы запросов:

• запрос на выборку;

• запрос на изменение;

• SQL-запрос;

• запрос с параметрами;

• перекрестный запрос.

Запросы на выборку позволяют извлечь информацию, рассчитать показатели и создать перекрестные ссылки, но не изменяют данные в таблицах.

Запросы на изменение дают возможность корректировать информацию, которая содержится в таблицах.

Существует четыре вида запросов на изменение:

• запрос на создание таблицы – создает новую таблицу на основе данных, которые уже размещены в одной или нескольких таблицах;

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

• запрос на присоединение – добавляет целые записи или только указанные поля в одну или больше таблиц;

• запрос на обновление – изменяет данные в существующих таблицах на основании информации в окне конструктора.

Запрос с параметрами – это запрос, при выполнении отображающий в собственном диалоговом окне приглашение ввести данные, например условие для возвращения записей или значение, которое требуется вставить в поле. Можно разработать запрос, выводящий приглашение на ввод нескольких единиц данных, например двух дат. Затем Microsoft Access может вернуть все записи, приходящиеся на интервал времени между этими датами.

Такие типы запросов удобно использовать в качестве основы для форм, отчетов и страниц доступа к данным.

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

Эти запросы могут формироваться в окне конструктора запросов.

SQL-запросы предназначены для решения более сложных задач и не создаются в названном окне, а кодируются с использованием операторов SQL. Перечислим варианты SQL-запросов:

• запрос на объединение – совмещает поля, которые расположены в одной или нескольких таблицах или запросах;

• запрос к серверу – позволяет забирать информацию непосредственно из ODBC-таблиц (ODBC – Open Database Connectivity, средства работы с открытыми базами данных), так как напрямую связывается с сервером, а не с таблицами системы Access;

• запрос на определение данных – вносит изменения в определение таблицы, то есть позволяет формировать и удалять таблицы, добавлять в них поля и создавать их индексы;

подзапрос – создает оператор внутри существующего запроса на выборку или изменение. Подзапрос выбирает подмножество записей, уже извлеченных главным запросом.

Выполнение любых задач, связанных с таблицами, подразумевает использование языка SQL. Запросы первых трех типов, перечисленных выше, встраиваются в средство просмотра SQL в окне запроса. Чтобы сформировать подзапрос, введите команду SQL SELECT в строке Критерии сетки Конструктор.

Запросы могут создаваться как с помощью конструктора запросов, так и посредством мастера запросов. На наш взгляд, конструктор удобнее: во-первых, его операции оформляются более наглядно, во-вторых, из конструктора легко переходить к инструкциям в форме SQL и наоборот. Тем не менее на конкретном примере будет показано, как формировать запрос при помощи мастера.

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

Запросы на выборку

Простые запросы

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

Формирование запроса с помощью мастера

Откройте окно базы данных и щелкните по кнопке Запросы, чтобы перейти в одноименную вкладку. Затем выберите опцию Создать запрос с помощью мастера.

На экране появится окно Создание простых запросов (см. рис. 11.1), где предлагается выбрать поля для запроса из таблицы или другого запроса (таких таблиц или запросов может быть несколько). Выберите таблицу Страны и с помощью знакомой вам кнопки

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

Поделиться:
Популярные книги

Первый среди равных. Книга VI

Бор Жорж
6. Первый среди Равных
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Первый среди равных. Книга VI

Я Гордый часть 2

Машуков Тимур
2. Стальные яйца
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я Гордый часть 2

Я все еще не князь. Книга XV

Дрейк Сириус
15. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я все еще не князь. Книга XV

Хозяйка забытой усадьбы

Воронцова Александра
5. Королевская охота
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Хозяйка забытой усадьбы

Гримуар темного лорда V

Грехов Тимофей
5. Гримуар темного лорда
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Гримуар темного лорда V

Матабар VIII

Клеванский Кирилл Сергеевич
8. Матабар
Проза:
магический реализм
5.00
рейтинг книги
Матабар VIII

Сапер. Том II

Вязовский Алексей
2. Сапер
Фантастика:
альтернативная история
4.25
рейтинг книги
Сапер. Том II

Последний Герой. Том 4

Дамиров Рафаэль
Последний герой
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Последний Герой. Том 4

Менталист. Революция

Еслер Андрей
3. Выиграть у времени
Фантастика:
боевая фантастика
5.48
рейтинг книги
Менталист. Революция

Тринадцатый X

NikL
10. Видящий смерть
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Тринадцатый X

Беглец

Бубела Олег Николаевич
1. Совсем не герой
Фантастика:
фэнтези
попаданцы
8.94
рейтинг книги
Беглец

Идеальный мир для Лекаря 8

Сапфир Олег
8. Лекарь
Фантастика:
юмористическое фэнтези
аниме
7.00
рейтинг книги
Идеальный мир для Лекаря 8

Деревенщина в Пекине 2

Афанасьев Семён
2. Пекин
Фантастика:
попаданцы
дорама
фантастика: прочее
5.00
рейтинг книги
Деревенщина в Пекине 2

Мастер 11

Чащин Валерий
11. Мастер
Фантастика:
боевая фантастика
попаданцы
технофэнтези
аниме
фэнтези
5.00
рейтинг книги
Мастер 11