Вопрос 39. запросы к базе данных. назначение и виды запросов.

      Комментарии к записи Вопрос 39. запросы к базе данных. назначение и виды запросов. отключены

Создание запросов.

Перед созданием запроса нужно открыть базу данных, в которой он будет храниться. После этого следует выбрать вкладку Запросы (Queries) и нажать кнопку Создать (New). Начать создание запроса можно также, выбрав в пункте Вставка (Insert) главного меню Access подпункт Запрос (Query). В результате появляется окно, в котором предлагается выбор варианта.

Возможны следующие варианты создания запроса:

— вручную с помощью конструктора — КОНСТРУКТОР (Design View);

— автоматическое создание простого запроса на выборку — Простой запрос (Simple Query Wizard);

— автоматическое создание перекрестного запроса для компактного представления данных в виде сводной (перекрестной) таблицы — ПЕРЕКРЕСТНЫЙ ЗАПРОС (Crosstab Querry Wizard);

— автоматическое создание запроса на поиск записей с повторяющимися значениями полей — ПОВТОРЯЮЩИЕСЯ ЗАПИСИ (Find Duplicates Query Wizard);

— автоматическое создание запроса на поиск записей в одной таблице, которые не имеют подчиненных записей в другой таблице — ЗАПИСИ БЕЗ ПОДЧИНЕННЫХ (Find Unmatched Query Wizard).

Создаваемые запросы основаны на полях таблиц и\или запросов из базы данных. Все способы, кроме первого, реализуются с помощью Мастеров, упрощающих разработку запроса. Если созданный запрос не удовлетворяет требованиям, то можно воспользоваться Конструктором, либо создать заготовку запроса с помощью мастера, которую затем подправить в режиме Конструктора.

Рассмотрим режим Конструктора как наиболее мощный и незаменимый при создании запросов, выходящих за рамки предлагаемых простейших вариантов.

Вызов Конструктора запросов производится при создании запроса или открытии существующего запроса и переводе его в режим Конструктора. В первом случае перейти в режим Конструктора запросов можно в окне открытой базы данных из вкладки Запросы (Queries) двумя способами: нажатием кнопки ОК в появившемся окне либо нажатием кнопки Конструктор (Design). Для перевода запроса в режим Конструктора достаточно щелкнуть мышью по кнопке на панели инструментов. Заметим, что при вызове Конструктора в главном меню Access появляется дополнительный пункт ЗАПРОС (Query), который имеет подпункты, позволяющие выполнять различные операции в процессе создания запроса: выполнение запроса, добавление таблицы в модель запроса, изменение вида запроса и т.д.

Составление запроса в режиме Конструктора в общем случае включает в себя определение следующего:

— таблиц и полей таблиц;

— вида запроса (выборка, добавление, удаление, перекрестный запрос, SQL-запрос);

— условий отбора записей;

— параметров отображения результатов выполнения запроса (показ полей, сортировка значений).

Все эти действия выполняются в запросной форме, которую можно отнести к форме запроса на языке QBE. Запросная форма включает три основных элемента: заголовок (имя и тип запроса); область таблиц, их полей и связей между таблицами; бланк запроса по образцу.

Для указания таблиц, используемых в запросе, нужно поместить в запросную схемы этих таблиц или запросов и указать связи между ними. Включение объектов в запрос производится в окне ДОБАВЛЕНИЕ ТАБЛИЦЫ (Snow Table), которое вызывается автоматически (при создании запроса) или принудительно при работе с запросом путем нажатия кнопки на панели инструментов.

При создании запроса Access по умолчанию предоставляет заготовку запроса на выборку. Изменить вид запроса можно с помощью пункта ЗАПРОС (Query) основного меню системы, где возможные виды запросов перечислены как подпункты меню. Этот способ не совсем удобен и очевиден.

Для создания запроса в виде инструкции языка SQL можно при наличии на экране запросной формы воспользоваться пунктом меню ЗАПРОС / ЗАПРОС SQL (Query\ SQL), в котором выбрать нужный вид SQL-запроса (на объединение , к серверу или управляющий). Если запрос уже описан в запросной форме, выбор упомянутого выше пункта приведет к преобразованию запроса, если возможно, в предложение языка SQL. Заметим, что обратный переход не получается — при этом появляется пустая запросная форма.

Завершить создание запроса можно следующим образом:

— выбором пункта меню ФАЙЛ / Сохранить (File\Save);

— выбором пункта меню ФАЙЛ / Сохранить как \ Экспорт (File\Save AS / Export);

— нажатием кнопки Сохранить (Save) на панели инструментов;

— путем закрытия окна создания запроса.

В Access имеется несколько видов запросов:

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

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

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

Основы конструирования запросов

Основные принципы конструирования запроса заложены в технике конструирования запроса на выборку, являющегося основой всех видов запросов.

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

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

Результаты выполнения запроса выводятся в режиме таблицы. Несмотря на то, что поля результирующей таблицы принадлежат, как правило, нескольким таблицам базы данных, с ними можно работать так, как если бы они принадлежали одной таблице. Можно также менять данные в таблице результатов запроса на выборку, при этом сделанные изменения будут внесены в базовые таблицы.

Для создания запроса в окне базы данных надо выбрать закладку Запрос и нажать кнопку [Создать]. В открывшемся окне Новый запрос из предложенных типов запросов (Конструктор, Простой запрос, Перекрестный запрос. Повторяющиеся записи. Записи без подчиненных) следует выбрать Конструктор.

В окне Добавление таблицы выбрать используемые в запросе таблицы и нажать кнопку [Добавить]. Затем, нажав кнопку [Закрыть], выйти из окна Добавление таблицы.

В результате появится окно конструктора запросов Имя запроса : запрос на выборку.

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

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

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

Статьи к прочтению:

Как создать запросы в Microsoft Access за 10 минут


Похожие статьи: