WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


Pages:     | 1 |   ...   | 3 | 4 || 6 | 7 |

В окне Запрос на выборку (рис. 9) вы конструируете запрос с помощью средства, именуемого запросом по образцу (Query By Example, QBE-запрос). При этом вы формируете запросы, перетаскивая поля из верхней части окна Запрос на выборку в бланк запроса по образцу, и размещаете поля в бланке именно в той последовательности, в какой хотите видеть их в табличном представлении. Иными словами, вы используете бланк QBE, чтобы указать MS Access, какими вы хотели бы видеть результаты вашего запроса. Работа с бланком запроса напоминает создание фильтра, но при формировании запроса вы можете извлекать данные сразу из нескольких таблиц.

После выбора полей вы используете бланк QBE-запроса для дополнительной настройки запроса на выборку записей, которые вас интересуют (рис. 9).

Рис. 9. Настройка QBE-запроса.

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

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

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

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

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

Предположим, вам нужны данные о покупателях, проживающих в Липецке и Саратове – их номера, имена и рейтинги. Эта информация хранится в таблице Покупатели.

Выполните следующие действия:

1. В окне База данных щелкните на ярлычке Запрос.

2. Щелкните на кнопке Создать.

3. В открывшемся диалоге Новый запрос выберите Конструктор и нажмите OK.

Открывается окно Запрос на выборку и второе диалоговое окно Добавление таблицы, содержащее список таблиц (или запросов), которые будут использованы для формирования запроса (рис. 10).

Рис. 10. Окно Добавление таблицы со списком таблиц базы данных для формирования запроса.

4. Дважды щелкните на строке с именем таблицы Покупатели, или выберите ее и нажмите кнопку Добавить, после чего щелкните на кнопке Закрыть.

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

Рис. 11. Список полей таблицы Покупатели.

Теперь надо включить в запрос поля:

1. Перетащите имя поля Номер из списка полей в первую клетку строки Поле бланка запроса по образцу, либо щелкните на первой клетке и выберите в списке поле Номер и нажмите 2. Таким же образом перетащите в клетки бланка поля Имя, Город и Рейтинг. В итоге бланк запроса будет содержать четыре поля из пяти имеющихся в таблице Покупатели (рис.12). Чтобы просмотреть все клетки с именами полей, вам, возможно, придется переместиться по бланку вправо с помощью горизонтальной полосы прокрутки.

Рис. 12. Заполненный бланк запроса по образцу.

Сохраните запрос и дайте ему имя:

1. Выберите команду меню Файл–Сохранить.

2. В появившемся диалоге Сохранение введите имя запроса Покупатели в Липецке и Саратове щелкните на кнопке OK. Новое имя запроса появится в строке заголовка окна запроса. Кроме того, MS Access добавит имя этого запроса в список ярлычка Запросы в окне База данных для дальнейшего использования.

3. Закройте окно запроса Покупатели в Липецке и Саратове и проверьте наличие его в базе данных на ярлычке Запросы.

2.4. Установка условия отбора нужных записей.

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

Для установки условия отбора вам может понадобиться выражение, по которому MS Access будет выбирать записи. Если, например, вам нужны поля с числовыми значениями, превышающими 5, то в строке Условие отбора надо ввести выражение >5. Применение выражений в запросе аналогично использованию фильтра, с которым вы познакомились в предыдущей работе.

Нам нужно получить список покупателей из Липецка и Саратова, поэтому условие отбора должно быть задано для столбца Город.

Для задания этого условия выполните следующие действия:

1. В окне База данных в списке запросов выделите запрос Покупатели в Липецке и Саратове и нажмите кнопку Конструктор. (Если же этот запрос уже открыт в табличном режиме, перейдите в режим Конструктора, для этого на панели инструментов нажмите кнопку Конструктор ).

2. В бланке запроса щелкните мышью в ячейку строки Условие отбора под полем Город.

3. Напечатайте Липецк и нажмите клавишу Enter. MS Access автоматически поставит кавычки по обеим сторонам введенного слова, указывая на его принадлежность к текстовому типу данных (рис. 13). Таким образом, вы задали критерий для поиска и отбора данных в таблице Покупатели.

Рис. 13. Бланк Запроса с одним критерием отбора записей.

4. Для начала выполнения Запроса по заданному критерию выберите команду в меню Запрос–Запуск или на панели инструментов нажмите кнопку.

Результатом выполнения запроса по этому условию (критерию) отбора станет таблица только с двумя покупателями из Липецка.

5. Снова перейдите в режим Конструктора.

Условие отбора может одержать множество критериев для поиска и отбора данных. В бланке Запроса ниже строки Условие отбора имеется строка или: в которой можно задать дополнительный критерий отбора записей.

Зададим следующий критерий для отбора: найти покупателей из г. Саратов. Выполните следующее.

6. В клетке под словом "Липецк" напечатайте Саратов и нажмите клавишу Enter (рис.

14).

Рис. 14. Бланк Запроса с двумя критериями отбора записей.

Обратите внимание! Теперь Условие отбора записей определено двумя критериями: выбрать покупателей из г. Липецк или из г. Саратов. В этом случае будут выбраны только те записи о покупателях, которые в поле Город имеют названия этих городов, т.к. критерии "Липецк" и "Саратов" связаны условием отбора ИЛИ. В результате выполнения запроса мы получим список различных покупателей, которые в поле Город имеют ИЛИ запись Липецк, ИЛИ запись Саратов.

7. Дайте команду Запуск. Результат выполнения запроса с двумя условиями отбора представлен на рис. 15. Заданному условию соответствует найденное число покупателей: два из Саратова и два из Липецка.

Рис. 15. Результаты выполнения запроса по двум критериям отбора.

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

Это условия выборки можно записать в виде одного логического выражения с использованием специального оператора, выполняющего действие ИЛИ. MS Access имеет такие операторы, например оператор OR – англ. ИЛИ, используемый в логических выражениях для отбора записей удовлетворяющих ИЛИ одному ИЛИ другому условию. Чтобы скомбинировать выражения с условием И, используется оператор AND, в этом случае данные должны удовлетворять всем условиям выборки одновременно.

8. Перейдите в режим Конструктора.

9. В бланке Запроса удалите оба критерия для отбора "Липецк" и "Саратов" (щелкните на ячейке с записью и удалите ее с помощью клавиши Delete, перейдите в следующую ячейку с записью и тоже удалите ее).

10. Дайте команду Запуск для выполнения Запроса.

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

11. Перейдите в режим Конструктора.

12. В бланке Запроса в ячейке строки Условие отбора столбца Город напечатайте Липецк OR Саратов и нажмите клавишу Enter (рис. 16). Затем дайте команду Запуск для выполнения Запроса, полученная таблица полностью совпадает с таблицей на рис. 15.

Рис. 16. Бланк Запроса по двум критериям отбора с использованием оператора OR (ИЛИ).

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

1. Перейдите в Режим Конструктора, чтобы внести дополнения в бланк Запроса.

2. Щелкните в ячейке строки Сортировка в столбце Имя.

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

Рис. 17. Бланк Запроса с заданным направлением Сортировки.

4. Дайте команду Запуск, чтобы увидеть результаты выполнения сортировки. Теперь записи в столбце Имя расположены в алфавитном порядке (рис. 18).

Рис. 18. Отсортированные записи по полю Имя.

2.6. Скрытие поля.

Предположим, что выводить на экран поле Город не требуется.

"Спрятать" ненужное поле в бланке запроса можно с помощью строки Вывод на экран:

1. Перейдите в Режим Конструктора.

2. В строке Вывод на экран в поле (столбце) Город снимите флажок (рис. 19). Запрос попрежнему будет учитывать любое условие, внесенное в этот столбец, но в табличном представлении этого поля уже не будет.

Рис. 19. При снятом флажке значения поля не выводятся на экран.

3. Дайте команду Запуск для выполнения Запроса с внесенными изменениями. Запрос в Режиме таблицы показан на рис. 20. Поле Город на экран не выводится.

Рис. 20. Ненужное поле на экране не видно.

4. Выберите команду меню Файл–Сохранить, чтобы сохранить внесенное изменение.

После этого закройте запрос.

5. Просмотрите список запросов в окне База данных. Убедитесь, что созданный вами запрос Покупатели в Липецке и Саратове присутствует в списке.

2.7. Создание запроса на основе связанных таблиц.

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

Теперь создадим Запрос на основе связанных таблиц: "Какие покупатели и у каких продавцов сделали заказы в течение с марта по май 1996 года" В результате Запроса на экран должны выводиться Номера заказов, Имена покупателей, Стоимость заказов, Даты покупки заказов, Имена продавцов.

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

Создайте такой Запрос для этого выполните следующие действия:

1. В окне База данных щелкните на ярлычке Запрос, а затем на кнопке Создать.

2. В диалоге Новый запрос выберите Конструктор. Открывается окно Запрос-выборка и появляется второй диалог Добавление таблицы.

3. Выделите в списке таблицу Заказы и щелкните на кнопке Добавить.

4. Аналогичным образом добавьте в запрос таблицы Покупатели и Продавцы.

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

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

Рис. 21. Существующие связи между таблицами.

6. Выберите команду меню Файл–Сохранить.

7. Присвойте запросу имя Информация о заказах и щелкните на кнопке ОК.

Поскольку бланк Запроса может содержать поля с одинаковыми названиями, но принадлежащие разным таблицам в Microsoft Access имеется возможность дополнить бланк новой строкой, в которой будут отображены названия тех таблиц, чьи поля включены в бланк запроса:

1. Выберите в меню Вид команду Имена таблиц (в бланке под строкой Поле появится строка Имя таблицы).

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

3. Из таблицы Покупатели перетащите в бланк запроса поле Имя.

4. Из таблицы Продавцы перетащите в бланк запроса поле Имя (рис. 22).

Рис. 22. Заполненный бланк запроса с включенной строкой Имя таблицы.

Теперь надо задать условие отбора и просмотреть результаты. Для отбора заказов, сделанных с марта по май 1996 года включительно, вы можете воспользоваться выражением с использованием оператора Between...And (От...До), который выполняет выборку в период ОТ одной даты ДО другой даты включительно. При задании Условия отбора можно воспользоваться только одним оператором AND (И), который выполняет выборку в период ОТ одной даты ДО другой даты не включая, крайние значения дат.

Например: при использовании оператора Between...And в логическом выражении Between 1-03-96 And 31-05-96, в список попадут все заказы данного периода, включая сделанные именно 1 марта и 31 мая;

при использовании оператора And в логическом выражении >1-03-96 And <31-05-96., в список попадут все заказы данного периода, кроме сделанных именно 1 марта и 31 мая, поэтому надо указывать другой диапазон дат (от 29 февраля до 1 июня).

Задайте условие отбора:

1. В строке Условие отбора под полем Дата покупки напечатайте Between 1-03-96 And 31-05-96, либо >29-02-96 And <1-06-96, а затем нажмите клавишу Enter. Формат даты сразу же поменяется и появится символ #, окаймляющий обе даты.

2. Для того чтобы это довольно длинное выражение уместилось в одну строку, лучше расширить соответствующий столбец бланка запроса. Чтобы размеры столбца стали оптимальными, щелкните дважды на правом разделителе полей в верхней части столбца Дата покупки (рис. 23).

Рис. 23. Вид бланка с увеличенной шириной столбца для условия отбора.

3. Дайте команду Запуск для выполнения Запроса, чтобы просмотреть интересующие вас заказы (рис. 24).

Рис. 24. Просмотр результатов запроса.

4. Сохраните запрос командой Файл–Сохранить и затем закройте запрос.

3. Практическое задание.

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

2. Создайте запрос "Покупатели с рейтингом, больше 100". Запрос должен работать с таблицами Покупатели и Продавцы и выбирать данные о покупателях, чей рейтинг больше 100 – имя покупателя, его рейтинг и имя продавца.

3. Создайте запрос "Заказы стоимостью от 1500 до 5000", работающий со всеми тремя таблицами учебной базы данных. Запрос должен извлекать данные о заказах, лежащих в указанном диапазоне цен: номер заказа, стоимость, дату покупки, имя покупателя и имя продавца.

В запросе "Заказы стоимостью от 1500 до 5000" отключите вывод на экран номера заказа и отсортируйте заказы по возрастанию стоимости, при составлении выражения для Условия отбора используйте оператор And.

4. Закройте все запросы и в окне базы данных на закладке Запросы просмотрите список составленных запросов, сравните с рис. 25.

Рис. 25. Список Запросов в окне базы данных.

5. С помощью Мастера форм создайте форму на основе запроса "Заказы стоимостью от 1500 до 5000" (Мастер форм использовался в Работе № 2).

Откройте Запрос "Заказы стоимостью от 1500 до 5000". Разместите на экране оба окна так, чтобы они не закрывали друг друга и сравните данные Формы с данными такого же Запроса.

6. С помощью Расширенного фильтра получите ту же информацию, что и с помощью Запроса "Продавцы с большими комиссионными", в полученной таблице скройте столбец Номер (фильтры рассматривались в Работе № 3).

7. Сверьте список имеющихся у Вас Форм в учебной базе данных с рис. 26.

Рис. 26. Список Форм в окне базы данных.

Microsoft Access 97. Работа № Создание и редактирование отчетов.

Цель работы: Знакомство с принципами импорта внешних данных в свою Базу данных.

Создание детального отчета. Создание отчета по сгруппированным данным.

Редактирование отчета с помощью Конструктора.

Отчеты обеспечивают наиболее гибкий способ просмотра и распечатки итоговой информации.

Они позволяют отображать на экране и печатать информацию с любой необходимой степенью детализации.

Существует три вида отчетов:

Pages:     | 1 |   ...   | 3 | 4 || 6 | 7 |






© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.