
- •Тема 6 Создание и корректировка бд в субд Access
- •Создание файла бд Способы создания таблиц.
- •Типы, возможности и способы создания запросов.
- •Назначение форм, их виды и способы создания.
- •Назначение отчетов и способы их создания.
- •Элементы управления, используемые при конструировании форм, отчетов, страниц доступа к данным.
Тема 6 Создание и корректировка бд в субд Access
Создание файла бд Способы создания таблиц.
Создание базы данных
Для создания базы данных в Microsoft Access можно использовать два способа. Простейший способ создания базы данных - использование мастера баз данных для создания всех необходимых таблиц, форм и отчетов. Имеется также возможность создать пустую базу данных, а затем добавить в нее таблицы, формы, отчеты и другие объекты - это наиболее гибкий способ, но он требует отдельного определения каждого элемента базы данных. В обоих случаях созданную базу данных можно в любое время изменить и расширить.
Для создания новой базы данных выберите в меню Файл команду Создать, затем в панели задач Создание файла выберите вариант Новая база данных. После этого на экране появляется стандартный файлер, в котором следует открыть нужную папку и задать имя создаваемого файла базы данных. Например, «группа .MDB». Создав файл, Access раскрывает пустое окно базы данных, и в этом окне можно будет проводить все операции - создавать и манипулировать объектами БД. MS Access является многооконным приложением, однако в любой момент может быть открыта только одна база данных. Именно ее окно является главным окном документа в приложении Access, и его закрытие означает закрытие соответствующего файла .MDB.
Рис. 1. Окно базы данных
Окно базы данных порождает множество дочерних окон объектов (таблицы, запроса, формы и т.д.), и каждое такое окно может быть закрыто автономно - любым из стандартных способов Windows. Кроме того, не закрывая окна, вы можете сохранить объект (например, макет таблицы), окно которого находится на экране, и присвоить ему имя - точно так же, как это делается с файлами: командой Файл-Сохранить или Файл-Сохранить как....
С окном любого объекта (дочерним окном) можно работать либо в оперативном режиме (например, вводить или просматривать данные в таблице), либо в режиме конструктора (например, изменять макет таблицы).
Типы, возможности и способы создания запросов.
ТИП ЗАПРОСА |
ОПИСАНИЕ |
Запрос на выборку |
Отбирает данные из одной или нескольких таблиц базы данных и отображает набор записей в таблице данных. Это самый распространенный тип запроса. |
Запрос с параметрами |
Предлагает пользователю ввести значения, которые определяют запрос, например, задать регион для получения результатов по продажам или ценовой диапазон на недвижимость. |
Перекрестный запрос |
Упорядочивает набор записей для облегчения их просмотра с использованием заголовков строк и столбцов. |
Запрос на изменение |
Создает новую таблицу или изменяет существующую. |
Запрос SQL |
Расширенный запрос, создаваемый с помощью инструкций SQL. |
Access поддерживает много типов запросов, в которых реализуются различные способы отбора данных.
Далее кратко описываются основные типы запроса, хотя этот курс посвящен наиболее часто используемому типу запроса - запросу на выборку.
Запрос на выборку Отбирает данные из одной или нескольких таблиц базы данных и отображает набор записей в таблице данных. Запрос на выборку можно использовать для группирования данных и вычисления сумм, количеств, средних чисел и других типов итоговых значений. (В этом курсе, однако, вычисления не освещаются.)
Запрос с параметрами При запуске выводит в собственном диалоговом окне приглашение ввести данные, например условие для возвращения записей. Можно разработать запрос с параметрами, предлагающий ввести нескольких единиц данных, например две даты. Затем Access может вернуть все записи, приходящиеся на интервал времени между этими датами.
Перекрестный запрос упорядочивает набор записей для облегчения их просмотра с использованием заголовков строк и столбцов. Данные можно увидеть с точки зрения сразу двух категорий.
Запрос на изменение Создает новую или изменяет существующую таблицу, добавляя к ней данные, удаляя из нее данные или обновляя их. Так как запрос на изменение фактически изменяет данные таблицы, перед выполнением запроса на изменение рекомендуется выполнять архивацию данных.
Запрос SQL Создается с помощью инструкций на языке структурированных запросов (Structured Query Language, SQL). SQL - комплексное средство отбора, обновления и управления реляционными базами данных. Access может автоматически создавать инструкции SQL при создании пользователем запроса этого типа. Инструкцию SQL можно также создать и вручную.
ВОЗМОЖНОСТИ И ТИПЫ ЗАПРОСОВ. ТЕХНОЛОГИИ ПРОЕКТИРОВАНИЯ
Одной из задач, наиболее часто возникающих при работе с базами данных, является выборка данных, т.е. извлечение из базы данных информации, отвечающей ряду требований, заданных пользователем. Одним из наиболее эффективных и универсальных инструментов, для выборки данных, является запрос. Запросы СУБД Access это основа алгоритмической обработки данных в базе данных. С помощью запроса можно выбирать информацию необходимую пользователю, добавлять, удалять и изменять данные базовых таблиц, формировать подсхемы базы данных, обеспечивающих создание многотабличных форм, отчетов и страниц доступа.
Классификация запросов
Запросы можно классифицировать по числу обрабатываемых таблиц, по типу алгоритмов обработки, по типу языка запросов, по стабильности условий фильтрации записей.
1. По числу обрабатываемых таблиц - запросы делятся на однотабличные и многотабличные (в последнем случае – все таблицы/запросы должны быть связанными).
2. По типу алгоритмов обработки различают запросы:
- выборки - результат запроса отображается только на экране, может использоваться для созданий форм, отчетов или страниц доступа, а также других запросов;
- перекрестный - создание сводной таблицы, содержащей групповые итоги;
- на создание таблицы - автоматическое формирование структуры записи новой таблицы и загрузка;
- на добавление - ввод новых записей, являющихся результатом выполнения запроса;
- на удаление - удаление группы записей из таблицы.
3. По типу языка запросов.
- QBE (Query By Example) - запрос no образцу, построенный на основе реляционного языка запросов графического типа;
- SQL (Structured Query Language) - реляционно-полный язык запросов.
Как правило, запросы создаются с использованием средств языка QBE. Запросы QBE автоматически транслируются на язык SQL
4. По стабильности условий фильтрации записей различают:
- статические запросы с неизменными условиями;
- динамические (гибкие) запросы с изменяемыми условиями.
Запросы по образцу
Язык QBE (Query-by-Exampie - Запросы no образцу) был разработан как средство, облегчающее работу начинающих пользователей Он получил широкое признание и в настоящее время реализован во всех СУБД
Язык QBE использует визуальный подход для организации доступа к данным, сохраняемым в БД. QBE может быть использован для формирования
- запросов на выборку данных;
- запросов на изменение данных;
- SQL-запросов
Access обладает наиболее удобными визуальными средствами для создания запросов Для быстрого создания запросов в Access предусмотрены мастеря, однако в большинстве случаев используют Конструктор запросов
Запросы на выборку
Основной тип QBE-запросов - это запросы на выборку. Запросы на выборку используют:
- для выбора информации содержащейся в одной или нескольких таблицах (запросах);
- для определения набора полей отображаемых в результирующей таблице;
- отбор записей проводится по конкретному или общему критерию;
- предусмотрено выполнение вычислений на основе данных сохраняемых в таблицах.
Запрос на выборку обеспечивает вывод на экран результирующей информации в момент выполнения запроса. В БД сохраняется лишь схема (макет) запроса, а не сам результат. Результирующая таблица содержит поля таблиц или запросов, вычисляемые поля, отобранные записи В запросе участвуют записи, удовлетворяющие условиям фильтрации, которые задаются для полей таблицы и вычисляемых полей.
Чтобы определить условия отбора записей, о строку Условие отбора, соответствующего столбца вводят одно из следующих значений:
- дли проверки на тождество с конкретным значением ввести это значение, например в поле Область ввести условие отбора Витебская-,
- для сравнения значений следует использовать операторы <. >, <=, => и о, например в поле Цена товара ввести условие <=500;
- составные условия задаются логическими операторами AND и OR, например Цена товара >=300 AND <=700;
- для выявления пустых полей применить оператор К Null, для непустых - Is Not Null;
- чтобы указать, что значение поля должно входить в набор величин, следует использовать оператор In, например Гарантийный срок - In (12,24);
- для проверки принадлежности к интервалу значений применить оператор BETWEEN AND ... например Цена товара - BETWEEN 300 AND 700,
- условия для различных полей обрабатываются совместно no AND (логическое И);
- для задания совместной обработки условий в одном поле или нескольких полях no OR (логическое ИЛИ) Размещайте их в разных строках ИЛИ бланка запросов
Для текстовых строк можно использовать символы шаблона: ? - любой символ, * - любые символы Несколько условий для одного и того же поля можно записать как одно условие с помощью логических связок AND, OR, NOT. Условия фильтрации можно задавать непосредственно в момент выполнения запроса - так называемый "гибкий" запрос или параметрический запрос Результат запроса можно сгруппировать по указанным полям для вычисления статистических итоговых функций: Sum, Count, Mm, Мах и др
Параметрические запросы
Конкретные условия выборки, заданные в запросе, ограничивают область его использования. Например, если необходимо получить информацию о моделях компьютеров или о моделях принтеров, то нужно создать два запроса, содержащих соответствующее условие отбора Этого можно избежать, создав один параметрический запрос (запрос с параметром). Запросы с параметрами — это запросы свойства которых изменяются пользователем при каждом запуске. При выполнении запроса появляется диалоговое окно, в котором нужно ввести условие отбора Этот тип запроса не является обособленным, параметр можно добавить к запросу любого типа. Использование параметров вместо "жестких" условий отбора расширяет область применеия запроса Но чтобы запрос стал действительно универсальным, следует задавать не один, а несколько параметров для отбора записей.
Групповые операции
Большинство информационных систем должны предоставлять информацию, содержащую ответы на типичные вопросы Напримео. менеджеру, специализирующемуся на продажах и маркетинге, требуется информация о заказах и поставках, выполненных за определенный промежуток времени, финансовому директору - обобщенные величины, такие как общая сумма неоплаченных счетов и среднее число дней, прошедших со времени выставления счета до момента оплаты. В некоторых случаях необходимо выполнить расчеты над всеми записями таблицы (или таблиц), иногда над записями соответствующим заданным условиям. Access предоставляет средство, которое обобщает информацию, отображаемую в запросах, и выполняет статистическую обработку данных.
Дли анализа обобщенных данных включенных в запрос используют статистические функции:
Функция |
Описание |
Avg( ) |
Вычисляет арифметическое среднее набора чисел, со- держащихся в указанном поле |
Сount() |
Вычисляет количество непустых значений в указанном поле |
Max() |
Возвращает максимальное значение в указанном поле |
Мin () |
Возвращает минимальное значение в указанном поле |
Sum() |
Вычисляет сумму значении содержащихся в заданном поде
|
Для обобщения данных используют групповые операции. Установка параметров запроса выполняется в Конструкторе запросов. Запросы, выполняющие группировку данных, называют итоговыми или группировочными.
Для формирования групповых итогов служит команда меню ВидР Групповые операции, которая обеспечивает группировку данных, по
совпадающим значениям поля и выбор статистической функции для вычисления итогов.
В начале результирующей таблицы размещаются поля группировки, их состав и порядок следования,
слева направо. Затем размещаются итоговые поля, по которым вычисляются статистические показатели
Sum, Count, Min, Мах и др.
Перекрестные запросы
Перекрестные запросы СУБД Access предназначены для получения сводных итогов. Макет перекрестного запроса содержит:
- область заголовка строк;
- область заголовка столбцов;
- область данных.
В отличие от Сводных таблиц Microsoft Excel, перекрестный запрос обладает существенным недостатком - в области данных может находиться только одно поле, по которому вычисляется одна итоговая функция; максимальное число полей группировки данных для заголовков строк - 3, для столбцов - 1. отсутствует область страницы для фильтрации записей Типы итоговых функций – стандартные статистические функции.
В обличив от сводных таблиц Microsoft Excel, перекрестный запрос обладает и достоинствами следующего вида:
- использует данные связанных таблиц,
-возможность задания условий отбора записей, участвующих в формировании результата. Запросы-действия
Запросом на изменение называют запрос, в результате выполнения которого происходит изменение или перемещение записей в одной или нескольких таблицах
В Microsoft Access существует четыре типа запросов на изменение:
- на создание таблицы;
- на добавление записей;
- на удаление записей;
- на обновление записей.
Результаты запросов на изменение, в отличив от запросов на выборку и перекрестных запросов, невозможно просмотреть в режиме таблицы. Однако режим таблицы позволяет осуществить предварительный просмотр данных, которые будут задействованы в запросе
Запросы на создание таблицы
Запросы на создание таблицы обеспечивают создание структуры новой таблицы, соответствующей структуре данных результирующей таблицы запроса. В новую таблицу автоматически загружаются записи, являющиеся результатом выборки. Такие таблицы часто создаются для сохранения промежуточных результатов запросов, создания новых таблиц комбинированной структуры, подготовки загрузочных массивов информации, создания архивов и т. п. Особенность запросов на создание таблиц - отсутствие в структуре создаваемой таблицы индексов и первичного ключа. Запросы на добавление записей
Запрос на добавление записей позволяет добавить группу записей из одной или нескольких таблиц в другую таблицу (несколько таблиц) При этом данные из одной таблицы добавляются в соответствующие поля другой таблицы даже в том случае, если таблицы содержат разное количество полей и их имена не совпадают. Запросы на добавление освобождают пользователя от ввода данных вручную. .
Запросы на обновление данных
Запрос на обновление таблиц обеспечивает групповую замену значений указанных полей в тех записях, которые отвечают условиям отбора. Эти условия могут задаваться как для полей обновляемой таблицы, так и для полей связанных с нею записей других таблиц. Обновляемое значение - вычисляемое выражение, содержащее имена полей, константы, встроенные функции, знаки операций.
Запросы на удаление записей
Запросы на удаление записей обеспечивают различные варианты группового удаления записей в одной таблице (или в нескольких таблицах). В таблице удаляются записи, удовлетворяющие условиям, которые могут задаваться для полей этой же таблицы, для полей связанных таблиц. Результат операции удаления зависит от свойств (параметров) связи таблиц.