Смекни!
smekni.com

Информатика Базовый курс (стр. 113 из 188)

9. Двойным щелчком на поле Основной параметр в списке полей таблицы Комплектующие введите это поле в бланк запроса по образцу.

10.

В строке Условие отбора столбца Основной параметр введите условие >60 (емкость диска более шестидесяти гигабайт).

11.

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

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

13. По окончании исследований закройте все открытые объекты и завершитеработу с программой Microsoft Access.


Практическое занятие 371

TJ Мы научились создавать запрос на выборку, основанный на связанных таблицах. Мы научились формировать структуру запроса путем выбора базовых таблиц и полей, а также формулировать условие отбора. Мы выяснили, какую роль играют связи между таблицами при создании запросов на выборку данных.
Упражнение 13.4. Создание запросов «с параметром»

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

Специальный тип запросов, называемый запросами «с параметром», позволяет пользователю самому ввести критерий отбора данных на этапе запуска запроса. Этим приемом обеспечивается гибкость работы с базой.

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

1. Запустите программу Microsoft Access (Пуск • Программы • Microsoft Access).

2. На панели Создание файла (в Области задач) щелкните на имени базы данныхКомплектующие в разделе Открытие файла.

3.

В окне Комплектующие: база данных откройте панель Запросы. Дважды щелкните на значке Создание запроса в режиме Конструктора — откроется бланк запроса по образцу.

4. Согласно упражнению 13.3, создайте запрос на выборку, основанный на таблице Поставщики. В него должны войти следующие поля:

• Компонент;

• Модель;


372 Глава 13. Работа с базами данных

• Цена оптовая;

• Поставщик;

• Телефон.

5. В строке Условие отбора поля Компонент введите: Процессор.

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

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

больше 100 единиц, мы бы написали: >100. Если бы нам ПоставщикиЦена оптовая были нужны процессоры дешевле 80 единиц, мы бы написали <80. Но если мы хотим дать пользователю воз- <[Веедите максимальнуюЖ. цену]

можность выбора, мы должны написать: < [Введите максимальную цену].

7. Закройте запрос. При закрытии сохраните его под именем Выбор комплектующих.

8. В окне Комплектующие: база данных откройте панель Запросы и запуститезапрос Выбор комплектующих. На экране появится диалоговое окно Введите значение параметра (рис. 13.19).

Рис. 13.19. Пользователь вводит значение параметра для условия отбора

9. Введите какое-либо число и щелкните на кнопке ОК. В зависимости от того,что реально содержится в таблице Поставщики, по результатам запроса будет сформирована результирующая таблица.

10. Закройте все объекты базы данных. Закройте программу Microsoft Access.

Щ Мы научились формировать запросы «с параметром» и узнали, что в основе этого вида запросов лежат запросы на выборку, у которых в поле Условие отбора записан заключенный в квадратные скобки текст, обращенный к пользователю.

Упражнение 13.5. Создание итогового запроса

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

Практическое занятие 373

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

Предположим, что малое предприятие собирает компьютеры трех классов: «Элитный», «Деловой» и «Экономичный». Несмотря на то что архитектура у всех компьютеров близка, их компоненты заметно отличаются по цене и техническим параметрам. Соответственно, имеются значительные отличия в цене этих трех моделей, что важно для захвата разных секторов рынка. Наша задача — подготовить итоговый отчет, с помощью которого можно определять цену каждой из модели компьютеров и динамично ее отслеживать при изменении входящих компонентов или их поставщиков.

1.

Запустите программу Microsoft Access (Пуск • Программы • Microsoft Access).

2. На панели Создание файла (в Области задач) щелкните на имени базы данныхКомплектующие в разделе Открытие файла.

3. В окне Комплектующие: база данных откройте панель Таблицы. Выберите таблицу Комплектующие.

4. Щелчком на значке Конструктор откройте таблицу в режиме проектирования —нам это необходимо для создания дополнительного поля Класс, в котором будут храниться данные о том, для какого класса изделий предназначены компоненты.

5. В начало структуры таблицы вставьте новое поле. Для этого выделите первоеполе (Компонент) и нажмите клавишу INSERT.

6. Введите имя нового поля — Класс и определите его тип — Текстовый.

7. Закройте окно Конструктора. При закрытии подтвердите необходимость изменить структуру таблицы.

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

• материнская плата;

• процессор;

• оперативная память;

• жесткий диск;

• корпус;

• дисковод CD-ROM;

• дисковод гибких дисков;

• видеоадаптер;

• звуковая карта;

клавиатура;• мышь.

Цены на эти изделия для каждого класса проставьте произвольно. Прочие поля таблицы можно не заполнять — в формировании итогового запроса они участвовать не будут.

374 Глава 13. Работа с базами данных

9. Закройте таблицу Комплектующие.

10. Откройте панель Запросы щелчком на одноименной кнопке окна Комплектующие: база данных.

11.

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

12. В бланк запроса по образцу введите следующие поля таблицы Комплектующие: Класс, Компонент, Цена.

13. Для поля Класс включите сортировку по возрастанию. Включите также сортировку по полю Цена, но на этот раз — по убыванию.

14.

На панели инструментов Microsoft Access щелкните на кнопке Групповые операции или воспользуйтесь строкой меню (Вид • Групповые операции). Эта команда необходима для создания в нижней части бланка строки Групповые операции. Именно на ее базе и создаются итоговые вычисления. Все поля, отобранные для запроса, получают в этой строке значение Группировка.

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