Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornye_raboty_042.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
3 Мб
Скачать
☆

1. Создание простого запроса

В лабораторной работе №3 "Сортировка, поиск и фильтрация данных в таблицах" рассмот­рены принципы создания запросов, в том числе упорядочивание данных в таблицах и создание фильтров для отбора записей. То же самое можно сделать при помощи окна конструктора запросов, но конструктор запросов предоставляет больше возможностей, чем фильтры в таблицах: он позво­ляет выбирать поля, которые будут отображены в результатах запроса, и объединять в одном запросе данные из разных таблиц.

Чтобы создать простой запрос, формирующий список рассылки для клиентов торговой компании Борей: *

  1. Откройте базу данных Борей. Появится окно базы данных.

  2. Щелкните мышью по стрелке рядом с кнопкой "Новый объект" (New Object) на панели инструментов и выберите из списка "Новый запрос" (New Query), или раскройте вкладку "Запросы" (Query) в окне базы данных и нажмите кнопку "Создать" (New). Появится диалоговое окно "Новый запрос" (рис.1). Выберите пункт "Новый запрос" и нажмите кнопку "ОК", чтобы открыть окно конструктора запроса (Query Design window).

  3. В окне конструктора запроса появится диалоговое окно "Добавление таблицы" (Show Table), как показано на рис.2. Оно содержит вкладки, которые позволяют выбрать существующие таблицы или запросы (или и те, и другие) для добавления в новый запрос. (Эти таблицы и запросы уже содержатся в демонстрационной базе данных Борей.)

Рис.1. Выбор способа создания запроса

  1. В этом примере запрос основан на таблице, вкладка "Таблицы" (Tables) раскрыта по умолчанию. Выберите из списка таблицу "Клиенты", щелкнув по ней мышью или используя клавишу <>, и нажмите кнопку "Добавить" (Add), чтобы добавить ее в запрос; то же самое можно сделать двойным щелчком мышью по таблице. Для до­бавления других таблиц в запрос эти действия повторяются (в данном примере нужна только одна таблица). После того как выбраны табли­цы или запросы, нажмите кнопку "Закрыть" (Close), чтобы закрыть диалоговое окно "Добавление таблицы".

Рис.2. Добавление таблицы в запрос

  1. Список полей таблицы "Клиенты" появляется в верхней панели слева, а пустой бланк запроса по образцу — в нижней панели (рис.3). Список полей содержит имена всех полей таблицы "Клиенты".

Для перехода в режим конструктора запроса нужно раскрыть вкладку "Запросы" в окне базы данных и нажать кнопку "Конструктор" (New). По умолчанию создается запрос на выборку (SELECT query), который воз­вращает данные, выбранные из таблиц или результирующих наборов запи­сей других запросов на выборку. Новому запросу по умолчанию присваи­вается имя "Запрос 1" (Query 1) до тех пор, пока запрос не сохранен и ему при сохранении не присвоено нужное имя. Если создаются другие запро­сы, а первый при этом не сохранен, то Access дает им имена "Запрос 2", "Запрос 3" и т. д.

Рис. 3. Список полей таблицы в окне конструктора запроса

2. Добавление полей в запрос.

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

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

Чтобы внести нужные поля в бланк запроса по образцу:

  1. При открытии окна конструктора запроса точка вставки (или курсор) находится в строке "Поле" (Field) бланка запроса по образцу, в первой колонке. Нажмите кнопку списка, расположенную в первой колонке справа, или нажмите клавишу <F4>, чтобы раскрыть список полей (Field Name list) (рис.4).

  2. Щелкните мышью по полю "ОбращатьсяК", чтобы выбрать его в ка­честве первого заголовка поля запроса, или выберите это поле при помощи клавиши <> и нажмите клавишу <Enter>. Список полей в данной ячейке закроется.

  3. Поместите точку вставки во вторую колонку, нажав клавишу <> или клавишу <ТаЬ> (кнопка списка переместится во вторую колонку). Дважды щелкните мышью по имени поля "Название" в списке полей таблицы "Клиенты" в верхней панели, чтобы это поле стало вторым полем запроса (это еще один способ добавления полей в запрос).

Третий способ называется перетаскиванием (drag-and-drop), с его по­мощью можно доба вить новые поля в бланк запроса по образцу за один раз (шаги 4 и 5).

Рис. 8.4. Добавление поля таблицы в бланк запроса по образцу

  1. Чтобы использовать метод перетаскивания, нужно сначала выделить добавляемые поля. Для этого в списке полей таблицы "Клиенты" в верхней панели окна конструктора запроса щелкните мышью по полю "Адрес" и, удерживая нажатой клавишу <Shift> или <Ctrl>, щелкните мышью по полям "Город" и "Область"; или выберите поле "Адрес" при помощи клавиши <> и, удерживая нажатой клавишу <Shift> или <Ctrl>, еще два раза нажмите клавишу <>. В результате будут выде­лены три поля (рис. 5).

Рис. 5. Перенос нескольких полей в бланк запроса по образцу одновременно

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

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

  1. На рис. .5 в бланке запроса по образцу отображены четыре колонки (ширина колонок установлена по умолчанию), при этом окно кон­структора запроса занимает не весь экран. В запросе будет семь полей, поэтому, чтобы отобразить их все, нужно увеличить размер окна или уменьшить ширину колонок, переместив границу области выделения столбца влево; можно также воспользоваться полосой прокрутки: щел­чок мышью по правой кнопке на горизонтальной полосе прокрутки смещает отображаемую часть бланка запроса по образцу на одну ко­лонку влево, или можно перетащить бегунок полосы прокрутки впра­во, чтобы отобразить нужную колонку.

  2. Нажмите нижнюю кнопку на полосе прокрутки списка полей таблицы "Клиенты", чтобы отобразить поля "Индекс" и "Страна". Удерживая нажатой клавишу <Shift> или <Ctrl>, выделите эти поля; удерживая нажатой правую кнопку мыши, перетащите значок, который появится на месте обычного указателя мыши, в первую пустую ячейку в строке "Поле" в бланке запроса по образцу (это будет шестая колонка) и от­пустите правую кнопку мыши (рис. 6). (Флажки в строке "Вывод на экран" (Show) устанавливаются автоматически при добавлении в бланк запроса по образцу новых полей.)

Рис. 6. Семь полей из таблицы "Клиенты" добавлены в запрос

  1. Нажмите кнопку "Представление запроса" (Query View) на панели ин­струментов, чтобы перейти в режим таблицы. Для отображения ре­зультирующего набора записей запроса понадобится некоторое время. Вместо этого можно нажать кнопку "Запуск" (Run), чтобы выполнить запрос. (Для запросов на изменение эти действия не эквивалентны.)

Поскольку в соответствующей строке бланка запроса по образцу не задано условие отбора, запрос возвращает все записи таблицы "Клиенты" (рис. 7). Записи отсортированы по ключевому полю "КодКлиента", т. к.не установлено значение в строке "Сортировка" (Sort). (Поле "КодКлиента" содержит буквенный код, основанный на названии компа­нии в поле "Название".)

Рис.7. Результирующий набор записей, включающий в себя все записи таблицы