Поиск данных с помощью запросов
Запросы позволяют отобрать записи, удовлетворяющие заданным условиям. Запрос является производным объектом от таблицы и результатом запроса также является таблица. Он также может иметь свою форму.
Выделяют запросы простые (с одним условием отбора) и сложные (с двумя и больше).
Запрос может быть создан двумя способами:
в режиме Конструктора (позволяет создавать простые и сложные запросы);
с помощью Мастера (используется для создания простых запросов).
Создадим запрос для БД «Комплектующие и расходные материалы», который позволит определить, какие товары имеются в наличии дороже 3000 руб.
В окне Комплектующие и расходные материалы: база данных активизируем объект Запросы и выберем Создание запроса в режиме конструктора.
В возникшем окне добавления таблицы необходимо выбрать таблицу, для которой создается запрос, и нажать на кнопку Добавить.
В окне запроса в строке Поле: выбрать имена полей, которые будут использоваться для формирования условия отбора. В строке Условие отбора: задать условия для выбранных полей таблицы. В строке Вывод на экран: необходимо указать поля, которые будут выведены в таблице запроса.
Рис. 4.3
Сохранить запрос командой [Файл > Сохранить как…].
Открыть созданный запрос можно, активизировав объект Запросы окна Комплектующие и расходные материалы: база данных и выбрав необходимый запрос. После открытия в появившемся окне будут представлены записи, удовлетворяющие указанным критериям отбора.
Сортировка данных
Записи таблицы всегда располагаются в файле БД в том порядке, в котором они были добавлены в таблицу. Для изменения порядка отображения записей таблицы используется сортировка.
Упорядочивание данных осуществляется по выбранному полю в определенной последовательности (по возрастанию/убыванию):
по алфавиту (для текстовых полей);
по величине числа (для числовых полей);
по дате (для полей типа Дата/Время).
Осуществим сортировку в БД «Комплектующие и расходные материалы» по полю Наименование по алфавиту. Для этого:
В окне Комплектующие и расходные материалы: база данных выделим объект Таблицы и откроем таблицу «Комплектующие и расходные материалы».
Выделим поле, по которому необходимо произвести сортировку (Наименование) и выполним команду [Записи > Сортировка > Сортировка по возрастанию/ Сортировка по убыванию].
Сортировки могут производиться по нескольким полям. Для этого осуществляется несколько сортировок от одного поля к другому. А также упорядочивать данные можно с помощью Конструктора запроса (рис. 4.3).
Создание реляционной бд
Реляционная БД – это совокупность отношений, содержащих всю информацию, которая должна храниться в БД. Она может восприниматься как совокупность таблиц.
Создадим реляционную БД «Компьютерный рынок». Выше мы уже рассматривали создание таблицы «Комплектующие и расходные материалы». Далее необходимо создать аналогичным образом еще две таблицы: «Покупатели» и «Цена реализации».
Таблица «Покупатели» должна содержать следующие поля:
«№ п/п» (счетчик) – ключевое поле, однозначно идентифицирующее запись;
«Код покупателя» (текстовый) – поле, однозначно идентифицирующее покупателя;
«Название фирмы» (текстовый) – содержит название фирмы-покупателя;
«Адрес юридического лица» (текстовый) – содержит адрес регистрации фирмы-покупателя.
Ключевым полем таблицы «Покупатели» будет поле «Код покупателя».
Таблица «Цена реализации» должна содержать однотипные с полями таблиц «Комплектующие и расходные материалы» и «Покупатели» поля «Код товара», «Код покупателя». Кроме этого поля «Счетчик» и «Цена». В качестве ключевого поля задается поле «Счетчик». В полях внешних ключей не могут содержаться значения, отсутствующие в соответствующих ключевых полях главных таблиц.
Установим связи между этими таблицами:
Необходимо выполнить команду [Сервис > Схема данных]. В появившемся окне выбрать таблицы, которые будут входить в создаваемую реляционную БД.
Чтобы установить между таблицами «Комплектующие и расходные материалы» и «Покупатели» связи отношения типа «многие-ко-многим», необходимо связать их с таблицей «Цена реализации» отношением типа « один-ко-многим». Для этого перетащим мышью из таблицы «Комплектующие и расходные материалы» ключевое поле «Код товара» (оно выделено жирным шрифтом) к одноименному полю таблицы «Цена реализации».
В появившемся окне Связи установить флажки напротив Обеспечение целостности данных, Каскадное обновление связанных полей и Каскадное удаление связанных записей и нажать на кнопку Создать.
Произвести аналогичную операцию с ключевым полем «Код покупателя» таблицы «Покупатели».
В результате получим связь между таблицами «Комплектующие и расходные материалы» и «Покупатели» типа «многие-ко-многим». Созданная реляционная БД «Компьютерный рынок» состоит из трех связанных таблиц и обладает целостностью данных, т.е. теперь возможно создавать запросы и формы, использующие данные из разных таблиц.