Сегодня

Добавить в избранное

УНИВЕРСАЛЬНЫЙ УЧЕБНИК
 
Главная| Контакты | Заказать | Рефераты

Предыдущая Оглавление Следующая

4.5.4. Работа с запросами

Запрос - это объект Access, с помощью которого из таблиц извлекаются записи, отвечающие заданным условиям. Запросы позволяют отсортировать записи (строки) в нужном порядке, выполнить вычисления с данными, подсчитывать итоговые значения.

Виды запросов: Запрос на выборку, Запрос с параметрами, Запрос на удаление записей, Запрос на добавление, Запрос на обновление записей, Запросы SQL, Запрос на объединение, Перекрестный запрос.

Запрос на выборку – самый распространенный вид запроса. Данные извлекаются из одной или нескольких таблиц. Результаты отображаются в виде таблицы, в которой разрешено изменение записей (при некоторых ограничениях). Кроме того, запросы на выборку используются для группировки записей, вычисления сумм, средних значений, и так далее.

Создание с помощью мастера простого запроса на выборку

В окне БД выберите Запросы ® «Создание запроса с помощью мастера»;

Выберите поля, которые нужно поместить в запрос ® OK;

Выполняйте инструкции Мастера.

Если созданный мастером запрос не полностью соответствует задуманному, измените запрос в режиме конструктора.

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

в окне БД выберите вкладку Запросы ® «Создание запроса в режиме конструктора»;

в окне «Добавление таблицы»

выделите имена объектов, добавляемых в запрос и нажмите кнопку Добавить ® Закрыть;

после добавления таблиц появляется окно:

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

добавьте поля в запрос. Это можно сделать одним из способов:

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

-         поместите мышь к нужному полю в таблице и выполните двойной щелчок мышью;

-         щелкните на ячейке строки «Поле» и выберите из раскрывающего списка нужное поле.

введите имя поля в ячейку строки «Поле»
(для удаления поля из запроса выделите поле и нажмите клавишу DEL);

ведите в запрос условия отбора, задайте порядок сортировки, создайте итоговые поля;

нажмите , чтобы просмотреть результаты запроса;

для сохранения нажмите , введите имя запроса, затем OK.

Ввод условия отбора в запрос

в режиме конструктора запроса выберите ячейку строки "Условие отбора" в столбце поля, для которого задается условие отбора;

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

Сортировка записей в бланке запроса или расширенного фильтра

откройте запрос в режиме конструктора;

чтобы провести сортировку по нескольким полям, разместите поля в бланке в порядке выполнения сортировки (Access начинает сортировку с самого левого поля в строке "Сортировка", затем переходит к следующему, расположенному справа от него, и так далее…: например, чтобы выполнить сортировку сначала по полю "Фамилия", а затем по полю "Имя", поле "Фамилия" должно стоять в бланке слева от поля "Имя");

в строке "Сортировка" для поля, по которому следует провести сортировку, нажмите кнопку раскрытия списка и выберите нужное значение.

Другие запросы

Запрос с параметрами

Если часто приходится выполнять один и тот же запрос на выборку или перекрестный запрос, изменяя при этом условия отбора, то сэкономить время позволяет запрос с параметрами. Запрос с параметрами не требует каждый раз вносить изменения в бланк запроса, вместо этого выводится приглашение пользователю ввести условия отбора. Для каждого поля допускается определение набора параметров. Предположим, например, что требуется часто выполнять запросы для подсчета общего числа заказов, принятых разными продавцами. В этом случае удобно создать запрос с параметрами, в котором выводится приглашение ввести имя продавца непосредственно при запуске запроса. Для создания запроса с параметрами:

создайте запрос на выборку или перекрестный запрос;

в режиме конструктора запроса переместите с помощью мыши поля из списка полей в бланк запроса;

для каждого поля, которое предполагается использовать как параметр, введите в ячейку строки "Условие отбора" текст приглашения, заключенный в квадратные скобки (это приглашение будет выводиться при запуске запроса, текст подсказки должен отличаться от имени поля).

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

Запрос на изменение

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

Запрос на создание таблицы

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

-         создание таблицы для экспорта в другую базу данных;

-         создание отчетов, содержащих данные, соответствующие определенному моменту времени и дате;

-         создание резервной копии таблицы;

-         создание архивной таблицы, содержащие старые записи.

Запрос на удаление записей

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

Запрос на добавление

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

Запрос на обновление записей

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

Запросы SQL

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

Запрос на объединение

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

Подчиненный запрос

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

Упражнения

1. Откройте БД Магазин книг. В наш магазин приходят покупатели, которых интересуют книги по определенным темам («Право», «Фантастика», …). Создайте запрос на выборку, отбирающий из Каталога книг книги по теме «Право», для этого проделайте:

в окне БД выберите вкладку Запросы ® «Создание запроса с помощью мастера»;

в появившемся окне

выберите: из таблицы «Тема» – поле Раздел; из таблицы «Каталог» –  поля Название, Автор, Издательство, На складе, Цена;

Далее ® Далее ® Имя запроса – «Книги по компьютерам» ® Готово;

откройте запрос в режиме конструктора;

в поле «Код_раздела» укажите свойство «Условие отбора» – Компьютеры.

сохраните и запустите запрос.

Аналогично создайте запросы по темам История, Приключения, Детектив, Фантастика, Философия, Медицина, Право, Компьютеры, Социология.

2. Иногда нужно найти книги какого-нибудь автора. Здесь пригодится запрос с параметром (при выполнении запроса появляется окошко с приглашением ввести автора), для создания проделайте:

в окне БД выберите вкладку Запросы ® «Создание запроса с помощью мастера»;

в окне «Создание простого запроса» выберите из таблицы «Каталог»  поля «Название», «Автор», «Издательство», «На складе», «Цена»;

Далее ® Далее ® Имя запроса – «Книги по автору» ® Готово;

откройте запрос в режиме конструктора;

в поле «Автор» укажите свойство «Условие отбора» – [Введите автора].

Сохраните и запустите запрос.

3. Для составления отчета о проданных книгах потребуется запрос, который будет извлекать из таблицы «Заказы» список проданных за день (месяц, квартал) книг. Создайте запрос:

в окне БД выберите вкладку Запросы ® «Создание запроса с помощью мастера»;

в окне «Создание простого запроса» выберите:
из таблицы «Тема» поле «Раздел»;
из таблицы «Каталог»  поля «Название», «Автор», «Цена»;
из таблицы «Заказы» поля «Количество», «Дата заказа»;

Далее ® Далее ® Имя запроса – «Продажи за период» ® Готово;

откройте запрос в режиме конструктора;

в поле «Дата заказа» укажите свойство «Условие отбора» – (>[С] And <[По];

сохраните и запустите запрос.

4. В магазин поступили книги. Занесите в таблицу Каталог данные по этим книгам:

Код_раздела

Название

Автор

Изд-во

ISBN

На складе

Цена

             
             
             
             
             
             
             

5. У Вас появились новые заказчики. Внесите в таблицу Заказчики данные:

ФамилияИО

Адрес

   
   
   
   
   
   
   
   

6. Новые заказчики заказали книги. В таблицу Заказы занесите данные:

Клиент

Книга

Дата заказа

Кол

Выполнен

         
         
         
         
         
         
         
         
Предыдущая Оглавление Следующая
[an error occurred while processing this directive]