Обработка данных в БД
• Access позволяет производить поиск записей, в которых значения определенного поля полностью или частично совпадают с некоторой величиной. • Например, в БД "Провайдеры Интернета" мы хотим найти запись, содержащую сведения о провайдере МТУ, но мы не помним его полное название. Можно ввести лишь часть названия и осуществить поиск записи.
Быстрый поиск данных в БД "Провайдеры Интернета" 1. Открыть таблицу БД "Провайдеры Интернета", дважды щелкнув по соответствующему значку в окне БД.
2. Ввести команду [Правка-Найти. . . ]. Появится диалоговая панель Поиск. В поле Образец: необходимо ввести искомый текст, а в поле Совпадение: выбрать пункт С любой частью поля.
3. В результате будет найдена и отмечена как активная запись № 3.
Поиск данных с помощью фильтров Гораздо больше возможностей для поиска данных в БД предоставляют фильтры. Фильтры позволяют отбирать записи, которые удовлетворяют заданным условиям. Условия отбора записей создаются с использованием операторов сравнения (=, >, < и так далее).
Простые фильтры содержат условие отбора записей только для одного поля. Сложные фильтры содержат несколько условий для различных полей. В результате применения сложного фильтра будут отобраны только те записи, которые удовлетворяют всем условиям одновременно. Можно сказать, что условия в сложных фильтрах связаны между собой операцией логического умножения.
Например, мы будем искать оптимального провайдера, то есть провайдера, который не берет плату за подключение, почасовая оплата достаточно низка (<40 рублей в час), до него легко дозвониться (количество входных линий >500), и он обладает высокоскоростным доступом в Интернет (скорость канала >100 Мбит/с). Создадим сложный фильтр для базы данных "Провайдеры Интернета".
Поиск данных с помощью фильтра Ввести команду [Записи-Фильтр. Изменить фильтр]. В появившемся окне таблицы ввести условия поиска в соответствующих полях. Фильтр создан.
3. Ввести команду [Записи-Применить фильтр]. В появившемся окне таблицы будут выведены записи, удовлетворяющие условиям поиска. В данном случае найден лишь один такой провайдер - МТУ-Интел.
Поиск данных с помощью запросов • Запросы осуществляют поиск данных в БД так же, как и фильтры. Различие между ними состоит в том, что запросы являются самостоятельными объектами БД, а фильтры привязаны к конкретной таблице. • Запрос является производным объектом от таблицы. Однако результатом выполнения запроса является также таблица, то есть запросы могут использоваться вместо таблиц. Например, форма может быть создана как для таблицы, так и для запроса.
• Запросы позволяют отобрать те записи, которые удовлетворяют заданным условиям. Запросы, как и фильтры, бывают простые и сложные. Простой запрос содержит одно условие, а сложный запрос содержит несколько условий для различных полей. • В процессе создания запроса можно отбирать не только записи, но и поля, которые будут присутствовать в запросе. • Создадим сложный запрос по выявлению оптимального провайдера в БД "Провайдеры Интернета".
1. В окне Провайдеры Интернета: база данных выделить группу объектов Запросы и выбрать пункт Создание запроса с помощью конструктора. 2. На диалоговой панели Добавление таблицы выбрать таблицу "Провайдеры Интернета", для которой создается запрос. Щелкнуть по кнопке Добавить. 3. В окне запроса в строке Поле: из раскрывающегося списка выбрать имена полей, для которых будут заданы условия. В строке Условие отбора: ввести условия для выбранных полей. В строке Вывод на экран: задать поля, которые будут представлены в запросе.
4. Сохранить запрос под именем Запрос1 с помощью команды [Файл-Сохранить как. . . ]. 5. В окне Провайдеры Интернета: база данных/ выделить Запрос1 и щелкнуть по кнопке Открыть.
В появившемся окне запроса будут выведены записи, удовлетворяющие условиям поиска. В данном случае найден лишь один такой провайдер - МТУ-Интел.
Самостоятельно: В базе данных "Провайдеры Интернета" осуществить поиск провайдеров, которые не берут плату за подключение и взимают самую низкую почасовую оплату.
Сортировка данных • Базы данных могут содержать сотни и тысячи записей. Часто бывает необходимо упорядочить записи, то есть расположить в определенной последовательности. Упорядочение записей называется сортировкой.
Сортировка записей производится по какомулибо полю. Значения, содержащиеся в этом поле, располагаются в определенном порядке, который определяется типом поля: – по алфавиту, если поле текстовое; – по величине числа, если поле числовое; – по дате, если тип поля - Дата/Время и так далее.
Сортировка записей может производиться либо по возрастанию, либо по убыванию значений поля. В процессе сортировки целостность записей сохраняется, то есть они переносятся из одного места таблицы в другое целиком.
Сортировка записей базы данных - это их упорядочение по значениям одного из полей.
Произведем сортировку в БД "Провайдеры Интернета" по полю "Скорость канала (Мбит/с)".
Быстрая сортировка данных 1. В окне Провайдеры Интернета: база данных в группе объектов Таблицы выделить таблицу "Провайдеры Интернета" и щелкнуть по кнопке Открыть. 2. Выделить поле Скорость канала и ввести команду [Записи-Сортировка по возрастанию]. Записи в БД будут отсортированы по возрастанию скорости канала.
Могут реализовываться вложенные сортировки, то есть сортировки, которые последовательно производятся по нескольким полям. После сортировки по первому столбцу производится сортировка по второму столбцу и так далее.
В нашем случае в поле Скорость канала, по которому была произведена сортировка, две записи (8 и 7) имеют одинаковое значение 10 и две записи (3 и 2) - одинаковое значение 112.
• Чтобы упорядочить эти записи, произведем вложенную сортировку, сначала по полю "Скорость канала", а затем по полю "Кол-во входных линий". • Access позволяет выполнять вложенные сортировки с помощью запросов.
Вложенная сортировка данных с помощью запроса 1. В окне Провайдеры Интернета: база данных выделить группу объектов Запросы и выбрать пункт Создание запроса с помощью конструктора. 2. На диалоговой панели Добавление таблицы выбрать таблицу "Провайдеры Интернета", для которой создается запрос. Щелкнуть по кнопке Добавить.
3. В окне запроса в строке Сортировка: из раскрывающегося списка выбрать имена полей, в которых задать тип сортировки. В строке Вывод на экран: задать поля, которые будут представлены в запросе.
4. Сохранить запрос под именем Запрос2 с помощью команды [Файл-Сохранитькак. . . ]. 5. На вкладке Запросы, выделить Запрос2 и щелкнуть по кнопке Открыть.
В появившемся окне запроса будет выведена отсортированная таблица.
Самостоятельно: Осуществить в базе данных "Провайдеры Интернета" вложенную сортировку по полям "Почасовая оплата" и "Название провайдера".
Печать данных с помощью отчетов • Можно осуществлять печать непосредственно таблиц, форм и запросов с помощью команды [Файл-Печать]. Однако для красивой печати документов целесообразно использовать отчеты. Отчеты являются производными объектами БД и создаются на основе таблиц, форм и запросов. • Создадим отчет, который будет красиво распечатывать БД "Провайдеры Интернета". Воспользуемся для этого Мастером отчетов.
1. В окне Провайдеры Интернета: база данных выделить группу объектов Отчеты и выбрать пункт Создание отчета с помощью мастера. 2. С помощью серии диалоговых панелей задать параметры внешнего вида отчета. 3. В окне Провайдеры Интернета: база данных щелкнуть по кнопке Просмотр. Появится документ в том виде, в котором он может быть распечатан.
4. Если внешний вид документа вас удовлетворяет, распечатать его с помощью команды [Файл-Печать]. Самостоятельно: Создать 3 отчета по образцу.