Упражнение1.
1. Создать базу данных: Услуги (с помощью Мастера таблиц), Клиенты, Заказы (с помощью Конструктора).
2. Создать схему данных (Сервис → Схема данных).
3. Заполнить таблицы Услуги и Клиенты данными.
4. Сохранить базу данных.
5. Создать форму для таблицы Услуги с помощью кнопки Создать, выбрав Автоформа: в столбец.
Создать форму для таблицы Клиенты с помощью Мастера формул, выбрав все поля таблицы, вид формы – ленточный, стиль Стандартный.
Создать форму для таблицы Заказы с помощью кнопки Создать, выбрав Автоформа: в столбец.. Настроить форму с помощью Конструктора.
В режиме Конструктора заменить поля Код услуги и Код клиента на элемент Поле со списком, для того, чтобы можно было при вводе информации выбирать значения из предложенного списка, а не вводить с клавиатуры.
Активизируйте поле Код услуги и нажмите клавишу Delete, удалив выбранное поле. Добавьте элемент Поле со списком:
в появившемся после добавления окне Создание полей со списком выберите способ, которым поле со списком получает свои значения (в данном случае – выбор из таблицы или запроса);
таблицу Услуги;
поля, которые нужно включить в Поле со списком (в данном случае все>>);
указать поле Код услуги как источник для значений
.
Аналогично добавить поле со списком для выбора клиента по его наименованию из таблицы Клиенты.
В результате выполнения действий форма Заказы в режиме Конструктора примет вид:
6. С помощью формы заполнить таблицу Заказы.
Сохранить базу данных.
Создание запросов
Запросы являются одним из основных инструментов обработки БД. Пользователь может использовать графическое средство формирования запроса по образцу – QBE (Query By Example).
|
Запрос строится на основе одной или нескольких таблиц. При этом можно использовать таблицы БД и другие запросы. Запрос QBE содержит схему данных, включающую используемые таблицы и бланк запроса.
Можно создать несколько видов запроса:
запрос на выборку – выбирает данные из взаимосвязанных таблиц и других запросов. Результатом его является таблица, которая существует до закрытия запроса;
запрос на создание таблицы – основан на запросе выборки, но в отличие от него результат запроса сохраняется в новой таблице;
запросы на обновление, добавление, удаление – являются запросами действия, в результате выполнения которых изменяются данные в таблицах.
Окно Конструктора запросов разделено на две панели: верхняя панель содержит схему данных запроса, которая включает выбранные для данного запроса таблицы; нижняя панель является бланком запроса, который нужно заполнить.
При заполнении бланка запроса необходимо указать:
в строке Поле имена полей, используемых в запросе;
в строке Вывод на экран отметить поля, которые должны быть включены в результирующую таблицу;
в строке Условие отбора задать условия отбора записей;
в строке Сортировка выбрать порядок сортировки записей результата.
Упражнение1.
Создать запрос с помощью Мастера: Список всех клиентов (название).
Источник данных: таблица Клиенты.
Результат выполнения запроса:
Упражнение2.
Создать запрос с помощью Конструктора: Список всех заказов, упорядоченных по клиентам, а затем по дате.
Источник данных: таблицы Заказы, Услуги, Клиенты.
|
Результат выполнения запроса:
Упражнение3.
Создать запрос: Список услуг стоимостью более 2000 р., упорядоченный по стоимости.
Источник данных: таблица Услуги.
Результат выполнения запроса:
Упражнение4.
Создать запрос: Список услуг, которые выполняются не более чем за 2 дня или не менее чем за неделю.
Источник данных: таблица Услуги.
Указание: Если в запросе имеются два или более условий, связанных отношением или, то они должны отражаться на различных строках группы полей Условие отбора или на одной строке, но с использованием функций языка SQL, например, <=2 Or >=7
Результаты выполнения запроса:
Упражнение5.
Название запроса: Список услуг, в наименовании которых встречается последовательность символов “ключ”.
Источник данных: таблица Услуги.
Результат выполнения запроса:
Упражнение6.
Создать запрос: Список услуг стоимостью более 4000р., которые выполняются не более чем за 3 дня.
Источник данных: таблица Услуги.
Указание: если в запросе имеются два или более условий, связанные отношением и, то они обязательно должны располагаться на одной строке поля Условие отбора.
Результат выполнения запроса:
Упражнение7.
Создать запрос: Список неоплаченных заказов.
Источник данных: таблицы Заказы, Услуги, Клиенты.
Указание: в условие отбора логического поля вводится текст, соответствующий запросу – Нет или No, Да или Yes.
Результат выполнения запроса:
Упражнение8.
Создать запрос: Список заказов на определенный день, значение которого является параметром запроса.
Источник данных: таблицы Заказы, Услуги, Клиенты.
|
Указание: в запросе с параметром в строку Условие отбора напротив имени поля, для которого задается условие, записывается не конкретное значение, а указывается условие его ввода. Оно представляет собой произвольное предложение, которое заключается в квадратные скобки. При выполнении такого запроса сначала должно выводиться диалоговое окно с подсказкой, а затем, после ввода с клавиатуры необходимой информации и нажатии клавиши ENTER, выдается результат выполнения запроса.
Результат выполнения запроса:
Упражнение9.
Создать запрос: Список заказов за определенный период.
Источник данных: таблицы Заказы, Услуги, Клиенты.
Результат выполнения запроса за период от 27.05.2006 до 01.06.2006:
Упражнение10.
Создать запрос: Список оплаченных клиентом заказов.
Источник данных: таблицы Заказы, Услуги, Клиенты.
Указание: в запросе условия связаны отношением и, причем одно из них задается в строке Условие отбора, а второе является параметром запроса.
Результат выполнения запроса для клиента ЗАО “Юбилей”:
Создание запросов на выборку с вычисляемым полем.
Запрос можно использовать для выполнения расчетов и подведения итогов из исходных таблицы Для создания вычисляемых полей используются математические и строковые операторы. При этом Access проверяет синтаксис выражения и автоматически вставляет следующие символы:
квадратные скобки, в которых заключаются имена элементов управления;
знаки номеров (#), в них заключаются распознанные даты;
кавычки, в них заключается текст, не содержащий пробелов или знаков пунктуации.
Поле, содержимое которого является результатом расчета по содержимому других полей, называется вычисляемым полем. Вычисляемое поле существует только в результирующей таблице.
Общий формат вычисляемого поля:
Имя вычисляемого поля: Выражение для создания вычисляемого поля.
Например, Прибыль: [Доход]−[Расход]
Для создания вычисляемого поля в бланк запроса в пустую ячейку строки Поле вводится выражение. После выполнения запроса вычисляемое поле, основанное на этом выражении, выводит на экран результат вычислений, а не само выражение.
Упражнение1.
Создать запрос: Список невыполненных заказов.
Источник данных: таблицы Заказы, Услуги, Клиенты.
Указание: дата выполнения заказа складывается из даты поступления и количества дней, необходимых на ремонт: [Дата]+[Количество дней]. Это еще одно поле пустого столбца бланка запроса.
Для создания вычисляемого поля можно воспользоваться Построителем выражений, который вызывается нажатием кнопки Построить панели инструментов.
В запросе появится новое поле с названием Выражение 1, используемым в качестве имени вычисления выражения.. Изменить в режиме конструктора запроса имя “Выражение1” на имя “Дата выполнения”.
В качестве условия отбора записать условие: >=№03ю06ю2006#
Результат запроса:
Упражнение2.
Создать запрос: Список заказов на текущий месяц.
Источник данных: таблицы Заказы, Услуги, Клиенты.
Указание: Номер месяца определяется с помощью функции Month, параметром которой является какая-либо дата. Т.е. в запросе создается еще одно поле Месяц, построив выражение Месяц: Month([Дата]). Условием отбора является конкретная дата.
Результат запроса:
Упражнение3.
Создать запрос: Список услуг со стоимостью, увеличенной на проценты (параметр запроса) относительно исходной.
Источник данных: таблица Услуги.
Указание: В запросе получается комбинация запроса с параметром и запроса с вычисляемым полем. Для решения задачи необходимо создать новое вычисляемое поле Новая стоимость, которое будет определяться выражением [Стоимость]*(100+[на сколько % увеличить])/100.
Результат запроса (при значении параметра 30%):