русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2015-07-09; просмотров: 860; Нарушение авторских прав


Для создания простого запросана выборку данных, т.е. выбора только для просмотра необходимых полей таблицы или полей из совокупности связанных таблиц без обработки выбранной информации, следует в начальном окне БД (см. рис. 4) выбрать режим Запросы, нажав мышью на корешок соответствующей вкладки. Затем выполнить последовательно команды Создать/Простой запрос (см. рис. 4, 13). После этого включается Мастер, формирующий запрос в автоматическом режиме в ходе диалога. В результате сначала на экране появляется диалоговое окно с двумя подокнами: Таблицы/запросы и Выбранные поля (см. рис. 14).

Выбрав в окне Таблицы/запросы нужную таблицу, можно отобрать в ней для просмотра нужные поля, нажав после выбора мышью соответствующего поля таблицы в окне Доступные поля кнопку правее окна «>», либо сразу все поля таблицы, нажав кнопку «>>». Если же необходимо отобрать для просмотра поля сразу из нескольких связанных между собой таблиц, то после выбора полей из первой таблицы переходят в окне Таблицы/запросы к другой таблице и аналогичным образом добавляют нужные для просмотра поля.

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

 
 

 

Рис. 14. Диалоговое окно создания Простого запроса на выборку

Создайте с помощью Мастера Простой запрос запрос на основе таблицы «Клиенты» с выбором всех полей для просмотра. Сохраните запрос под именем «Клиенты».

Необходимо заметить, что если выбирать для запроса поля сразу из нескольких таблиц, то в результате выполнения такого запроса в единой таблице будут собраны все записи, соответствующие запрашиваемым данным таблиц с повтором значений полей из главной таблицы. Это происходит вследствие того, что одной записи в главной таблице соответствует несколько записей в подчиненной таблице, и обеспечивается автоматически благодаря наличию межтабличных связей типа один-ко-многим, а также целостностью данных в БД.



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

 

4. 2. Создание запроса в режиме Конструктор

 

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

 
 

Рис. 15. Окно выбора таблиц из БД для запроса

 
 

Рис. 16. Окно организации запроса в режиме Конструктор

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

Нижняя часть диалогового окна Запрос на выборку называется бланком запроса по образцу, иначе QBE-бланком или QBE-областью. При этом количество строк в QBE-бланке может меняться в зависимости от вида запроса. На рис. 16 представлен бланк запроса по образцу QBE, содержащий строки:

· Поле – для запрашиваемых полей;

· Имя таблицы – для вывода имени таблицы, из которой выбирается поле;

· Сортировка – для проведения сортировки по этим полям;

· Вывод на экран – для вывода или нет выбранных запросом полей на экран;

· Условие отбора – для ввода условий на выбор записей в соответствии с заданными условиями, причем условия по отдельным полям в этой строке соединяются операцией «и» (все условие верно только, если все составляющие его условия верны);

· Или – для ввода условий, которые соединяются с условием в вышерасположенной строке Условие отбора по принципу «или» (все условие верно, если хотя бы одно из составляющих его условий верно).

Для создания простого запроса на просмотр таблицы с проведением сортировки ее записей добавьте в диалоговое окно Запрос на выборку таблицу «Товары». Перенесите затем мышью в QBE-область последовательно поля: «Товар», «Количество», «Стоимость», «Описание», «Изображение», «Дата поступления». С помощью раскрывающегося спи­ска в строке QBE-бланка Сортировка для поля "Товар" установите режим сор­тировки По возрастанию, а для поля «Стоимость» – По убыванию (см. рис. 16).

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

Для подавления вывода на экран отдельных полей запроса необходимо в строке QBE-бланка Вывод на экран с помощью мыши произвести сброс флажка (отметка внутри квадрата пропадет). Поскольку данные с типами Поле MEMO и Поле объекта OLE не отображаются в таблицах запросов, то нашем случае вывод этих полей всегда будет подавлен (просмотреть такие поля можно только построив на основе полученного запроса новый объект БД Форма, см. подробнее раздел 5 пособия).

При построении запросов следует также иметь в виду, что Access не проводит сорти­ровку по полям с типами данных Поле MEMO и Поле объекта OLE.

Для выполнения запроса щелкните мышью кнопку Запуск в пиктографическом меню. В результате на экране в виде таблицы отобразится результат запроса. Сохраните запрос под именем «Товары с сортировкой».

 
 

Рис. 17. Бланк запроса на выборку с условием и сортировкой

 
 

Рис. 18. Окно Построитель выражений

Составим теперь список контрактов, заключенных с клиентами после 1 марта 2001 года. Для подготовки такого запроса с условием для выборки записей, действуя аналогичным предыдущему случаю образом, выберите в главном окне БД объект Запросы и вы­полните затем последовательно команды Создать/Конструктор. В окно Запрос на выборку добавьте таблицу «Контракты», перенесите мышью из списка полей выбранной таблицы в область спецификации запроса поля таблицы «Товар», «Количество» и «Дата» в нужной последовательности.

В поле запроса «Товар» задайте режим сортировки. В поле запроса «Дата» в строке Условие отбора задайте отбор по критерию (см. рис. 17).

>1.03.01

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

В качестве примера отбора данных по более сложному условию рассмотрим запрос на полу­чение сведений о контрактах, заключенных клиентами за определенный промежуток времени, например с 15.03.01 по 23.05.01.

Постройте такой запрос на базе таблицы «Контракты». Включите в запрос поля «Дата», «Товар», «Клиент». Для поля «Дата» задайте режим сортировки По воз­растанию и условие отбора:



<== предыдущая лекция | следующая лекция ==>
ЗАПРОСЫ В СУБД ACCESS | Запрос с параметром


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.793 сек.