- •1.2. Оформление курсовой работы
- •2. Рекомендации по выполнению работы
- •2.1. Последовательность создания ис
- •2.2. Нормализация данных
- •2.3. Создание таблиц
- •2.4. Установка связей между таблицами
- •2.5. Создание форм для работы с таблицами
- •2.6. Создание запросов
- •2.6.1. Создание запроса на выборку с вычисляемым полем
- •2.6.2. Создание запроса с условием
- •2.6.3. Создание запроса с параметром
- •2.6.4. Создание перекрёстного запроса
- •2.6.5. Создание запроса на обновление данных
- •2.6.6. Запрос на удаление
- •2.6.7. Запрос на создание таблицы
- •2.7. Создание отчётов
- •2.8. Макросы
- •2.9. Создание интерфейса пользователя
- •2.9.1. Порядок создания интерфеса
- •2.9.2. Создание подчинённой кнопочной формы для работы с таблицами
- •2.9.3. Создание формы для работы с запросами
- •2.9.4. Создание формы для работы с отчётами
- •2.9.5. Создание главной кнопочной формы
- •3. Примерные варианты заданий на курсовую работу Варианты заданий и название базы данных
2.6.4. Создание перекрёстного запроса
Пусть мы хотим получить сведения о том, кто из клиентов и какие продукты покупал, а также в каком количестве, причем данные хотим иметь в виде таблицы (табл1).
В этом случае надо будет создать так называемый перекрестный запрос.
Перекрестный запрос имеет заголовки строк, заголовки столбцов и на их пересечении данные. Данные получаются путем вычисления по встроенным функциям. Перекрестный запрос также называется перекрестной таблицей.
Таким образом, при создании перекрестного запроса необходимо указать:
откуда брать заголовки строк;
откуда брать заголовки столбцов;
откуда брать данные и что с ними делать (суммировать, вычислять среднее, брать максимальное значение и т.д.).
Перекрестный запрос создаётся следующим образом.
Сначала как обычно щелкнуть по объекту «Запросы», щелкнуть по кнопке «Создать», выделить строчку «Конструктор» и ОК.
После этого надо добавить те таблицы, откуда будут браться названия строк, столбцов и данные. В нашем случае надо добавить все таблицы.
Таблица 1. Перекрестная таблица
Клиент |
Пастила фруктовая |
Торт «Птичье молоко» |
Конфеты «Южная ночь» |
Клуб «Орфей» |
10,4 |
|
37 |
Ресторан «Барракуда» |
|
56,5 |
28,5 |
Ресторан «Максим» |
45 |
37,8 |
|
В панели инструментов есть кнопка «Тип запроса» и сразу справа от неё маленькая кнопочка с треугольником, нажав на которую надо выбрать из списка «Перекрестный». После этого в макете запроса должна появится строчка «Перекрестная таблица».
В первом столбце макета указывается откуда брать заголовки строк, причем в строке «Перекрестная таблица» надо указать, что это заголовки строк (щелкнуть в этой строке и выбрать из списка). В нашем случае заголовки строк это наименование клиента, поэтому надо выбрать таблицу «Клиенты», поле – «наименование», групповая операция - группировка.
Аналогично во втором столбце указывается, откуда брать заголовки столбцов. Нам надо выбрать таблицу «Продукты», поле – «Название», групповая операция – группировка, перекрестная таблица – заголовки столбцов.
Ну а в третьем столбце надо указать, откуда брать данные и что с ними делать. Что делать с данными указывается следующим образом. Сначала в строке «Перекрестная таблица» выбирается из списка «Значение», а затем в строке «Групповая операция» выбирается соответствующая операция. В нашем случае имя таблицы – «Заказы», поле – «Количество», групповая операция - Sum, перекрестная таблица – «Значение».
Закрыть макет подтвердив сохранение и назвав запрос «Кто что и сколько».
Открыть запрос «Кто что и сколько» и убедиться, что он работает.
2.6.5. Создание запроса на обновление данных
Запрос на обновление используется для обновления данных в таблицах. Например, если цена товара изменилась, в таблицу «Товары» необходимо внести новые данные.
Чтобы создать запрос на обновление данных, надо сначала создать обычный запрос на выборку, включив в него поля, подлежащие обновлению и поля, по которым задаются условия отбора записей.
Пусть мы хотим обновить цену товара «Пастила фруктовая» на новое значение, равное 35. Сначала в запрос надо включить поля «цена» и «название», причём условие отбора для поля «название» должно содержать название продукта «Пастила фруктовая» как показано на рисунке.
Затем, не выходя из конструктора, надо открыть список «Тип запроса» в панели инструментов и выбрать из этого списка строчку «Обновление». После этого в макете запроса появится строка «обновление» в которой и надо указать новое значение, как показано на следующем рисунке.
После этого надо закрыть макет запроса, подтвердив сохранение и дав ему имя, например, такое «Изменение цены Пастилы фруктовой».
Этот запрос можно усовершенствовать скомбинировав его с параметрическим запросом. Если вместо конкретного значения цены поставить в квадратных скобках поясняющий текст, например, «Новая цена», тогда при выполнении этого запроса сначала будет запрошено новое значение цены. Аналогичным образом можно использовать и все другие возможности при создании запросов.

Продукт