- •ВВЕДЕНИЕ
- •1. ПРОЕКТИРОВАНИЕ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ
- •1.1. Типы баз данных
- •1.2. Нормализация отношений в РБД
- •1.3. Типы связей и ключей в РБД
- •2.2. Создание таблиц в режиме Конструктор
- •3. ОРГАНИЗАЦИЯ СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ И ЗАПОЛНЕНИЕ ТАБЛИЦ
- •4. ЗАПРОСЫ В СУБД ACCESS
- •4.1. Запрос на выборку данных
- •4. 2. Создание запроса в режиме Конструктор
- •4.3. Запрос с параметром
- •4.4. Итоговые запросы
- •4.5. Запросы с вычисляемым полем
- •4.6. Перекрестные запросы
- •5. ФОРМЫ В СУБД ACCESS
- •5.1. Создание форм на основе Мастера форм
- •5.3. Конструктор форм
- •6. ОТЧЕТЫ В СУБД ACCESS
45
ся к ее первоначальному варианту) и просмотрите полученные после редактирования результаты.
На основе запроса «Контракты» создайте в Режиме SQL программу запроса выборки из таблицы «Контракты» полей «Товар», «Клиент», «Количество» с условием по количеству > 100, группировкой по полю «Клиент» и сортировкой по полю «Товар».
Контрольные вопросы
1.Назначение запросов.
2.Типы запросов.
3.Процедура создания простого запроса с помощью Мастера.
4.Структура QBE-бланка Конструктора.
5.Создание запроса на выборку по условию.
6.Создание сложного запроса со связками «и» и «или».
7.Структура Построителя выражений.
8.Назначение и процедура создания запроса с параметром.
9.Назначение и процедура создания запроса с вычисляемым полем.
10.Способы переименования полей в таблице запроса.
11.Назначение и процедура создания итогового запроса.
12.Назначение функций групповых операций.
13.Назначение и процедура создания перекрестного запроса
14.Режим SQL для создания запросов.
15.Назначение операторов SELECT, FROM, WHERE в программе запроса.
16.Назначение операторов ORDER BY, GROUP BY, TRANSFORM в
программе запроса.
5. ФОРМЫ В СУБД ACCESS
Формы в Access предназначены для отображения в удобном виде на экране монитора данных, хранящихся в исходных таблицах БД или в таблицах, полученных в результате выполнения запросов. Фактически на основе форм создается тот необходимый и удобный пользовательский интерфейс, в котором и происходит вся работа с БД. Например, можно расположить поля формы так, чтобы ввод или редактирование записи в таблице данных выполнялось бы в один столбец слева направо и сверху вниз, что обычно ускоряет ввод данных и сводит до минимума ошибки пользователя.
Другим важным назначением форм является обеспечение безопасности структуры БД. Дело в том, что производимые с помощью форм операции по вводу и редактированию данных в исходных таблицах БД не затрагивают структуры таблиц. Можно сказать, что работа с формами происходит всегда на уровне пользователя БД, а не на уровне разработ-
46
чика, который определяет структуру БД – совокупность таблиц, многочисленные и разнообразные связи между ними, различные свойства для полей таблиц и т.п. Из соображений безопасности рядовой пользователь БД, содержащей очень важную и ценную информацию, с которой работают многие сотрудники, в принципе не должен иметь доступа непосредственно к самим таблицам данных. Он должен иметь право только «заглянуть» в их содержимое и при необходимости его отредактировать. Это обстоятельство позволяет сохранить неизменной структуру БД, так как какие бы данные ни вводились с помощью форм, структура БД при этом никак не изменяется. Другими словами, неопытный пользователь никак не сможет «испортить» структуру БД, поскольку на основе форм он имеет доступ только к наполнению таблиц БД, а не к их структуре.
Формы в Access создаются из набора элементов экранного интерфейса, т.н. объектов элементов управления или просто Элементов управления. В окнах форм размещают Элементы управления двух типов: для отображения данных таблиц (или данных таблиц по результатам запросов) и для отображения статических данных – подписей и различных логотипов, размещаемых дополнительно для пояснений или придания более красочного и информативного представления отображаемых на экране данных. Причем формы можно вставлять одну в другую, создавая т.н. Подчиненные формы, основанные на связанных друг с другом таблицах БД, что позволяет проводить редактирование данных сразу в нескольких таблицах.
Кроме того, с помощью соответствующих Элементов управления форм только и можно полностью просматривать содержание полей типа MEMO, для которых на форме появляется полоса прокрутки для продолжения просмотра текста (напомним, что объем текстовой информации в этих полях может достигать 64 Кбайт). Для полей объектов OLE с графической, звуковой и другой мультимедийной информацией, которая в обычном представлении таблиц БД вообще недоступна (в полях OLE таблиц размещается только адрес, т.е. ссылка на файл с такого рода информацией), формы предоставляют непосредственный доступ к мультимедийной информации через специальные элементы управления – т.н.
Присоединенные рамки объектов.
Наконец, используя Элементы управления, можно запускать заранее разработанные макросы и любые другие программы на языке Visual Basic, что позволяет создавать уже настоящие автоматизированные системы управления БД.
СУБД Access содержит обширный набор инструментов для автоматического создания форм – это прежде всего стандартные варианты создания форм при помощи мастеров: Мастер форм, Автоформ, Диаграм-
мы и Сводной таблицы, а также режим Конструктор для создания форм
«вручную» (см. рис. 30).
47
Самый быстрый способ подготовки формы может быть реализован в режиме просмотра таблицы или запроса щелчком мышью по соответствующей пиктограмме Новый объект (см. рис. 31), где можно выбрать команду Автоформа, когда мастер создает стандартную форму, содержащую все поля активной таблицы в столбец, за одну операцию, либо команду Форма, когда раскрывается диалоговое окно создания Новой формы (см. рис. 30).
Рис. 30. Режимы создания формы в диалоговом окне Новая форма
Процедура создания формы с помощью Мастера форм разделена на несколько шагов, в рамках выполнения которых производится выбор нужной таблицы и тех полей в ней, которые вы намерены просматривать или редактировать. Кроме того, допускается добавление других таблиц и выбранных из них полей для расположения их на данной форме. Конечно, добавлять поля из других таблиц в создаваемую форму имеет смысл только в том случае, когда обе таблицы являются связанными между собой.
Мастера Автоформа: в столбец, Автоформа: ленточная и Авто-
форма: табличная создают соответствующие их названию формы на основании одной заранее определенной таблицы или запроса. При этом форма строится в дальнейшем полностью в автоматическом режиме.
Мастер Диаграмма создает формы с диаграммами разного типа – линейными, круговыми, столбчатыми, штриховыми и т.д. Он используется для графического представления числовых данных.
48
Рис. 31. Меню команды Новый объект
Мастер Сводная таблица используется при необходимости отобразить с помощью формы информацию, находящуюся в нескольких связанных таблицах и запросах (в принципе во всех существующих на данный момент в БД таблицах и запросах). При этом Мастер произведет необходимые групповые операции для получения сводной (итоговой) информации по выбранным таблицам для ее представления в форме данного типа.
Далее в пособии более подробно рассматривается построение форм на основе Мастера форм, Диаграммы и Конструктора.
5.1. Создание форм на основе Мастера форм
Рассмотрим подробно процедуру создания с помощью Мастера форм формы, отражающей динамику заключения контрактов по соответствующим товарам.
Для создания формы в главном окне БД выберите объект Формы, нажав мышью на ярлычок соответствующей вкладки. Затем выполните команду Создать. На экране появится диалоговое окно Новая форма (см.
рис. 30).
Выберите Мастер форм и нажмите кнопку ОК. Из раскрывающегося списка Выбор таблицы/запроса выберите таблицу «Контракты», после чего нажмите кнопку ОК в соответствующем диалоговом окне (см. рис. 22). В результате на экране появится диалоговое окно, аналогичное окну (см. рис. 14), открываемому Access при создании запроса, где предлагается выбрать таблицы и поля из них, которые необходимо включить в состав создаваемой формы. Выберите все поля таблицы для отображения их на форме.
Чтобы использовать возможности Мастера форм в полной мере, в этом же окне добавьте к создаваемой форме поля из связанной с таблицей «Контракты» таблицы «Товары»: «Товар», «Изображение», «Описание»,
49
что позволит создать вложенные друг в друга формы, т.н. форму с подчиненной формой. Далее на следующем шаге работы Мастера открывается диалоговое окно, в котором необходимо выбрать тип представления данных. Поскольку по организации связи между таблицами таблица «Товары» является главной (см. схему связей для нашей БД на рис. 10), то, выбрав тип представления данных по Товары, получим форму с подчиненной формой (см. рис. 32).
Рис. 32. Окно выбора типа представления данных
Затем открываются последовательно окна выбора внешнего вида формы, стиля оформления формы и имени формы, после чего Мастер форм автоматически создаст форму со всеми остальными настройками, принятыми по умолчанию.
После открытия созданной формы Access отображает первую запись из таблицы или запроса. Переход к другим записям осуществляется при помощи кнопок прокрутки. При большом количестве данных можно включить режим поиска записей Поиск в поле:, щелкнув мышью кнопку Найти в пиктографическом меню.
Редактирование и ввод данных осуществляется таким же образом, как и в режиме таблицы. Сохранение проведенных изменений в таблицах происходит автоматически при закрытии формы или переходе к другому режиму работы с БД.
Нажатие пиктограммы Режим таблицы позволяет перейти к табличному представлению данных и использовать те же операции, которые использовались при работе в таблицах (в нашем случае в Режиме таблицы будет открываться только главная таблица «Товары» с выбранным для формы набором полей). Однако, как это уже отмечалось выше, в отличие от прямого редактирования содержания исходных таблиц здесь невозможно провести изменение структуры таблиц и их связей с другими таблицами.
Сохраните созданную форму под именем «Контракты_товары».
50
5.2.Построение диаграмм
Вкачестве примера использования Мастера Диаграмма создадим форму с диаграммой, отражающей динамику заключения контрактов. При построении диаграммы следует, как обычно, выбрать таблицы или запросы, содержащие данные, и активизировать Мастер Диаграмма. В результате на экране появится диалоговое окно Создание диаграмм (см. рис. 33). В диалоговом окне нужно выбрать данные, которые будут отображаться в виде диаграммы заключения контрактов.
Рис. 33. Диалоговое окно Создание диаграмм
Рис. 34. Окно выбора типа отображения данных Мастера Диаграмма
Данные для диаграммы, отражающей динамику, содержатся в полях «Дата», «Количество». Перенесите эти поля, а также поле «Товар» в окно Поля диаграммы, после чего нажмите кнопку Далее в диалоговом окне.
В новом диалоговом окне необходимо выбрать тип диаграммы. После чего появляется образец будущей диаграммы, причем ориентируясь на подсказки в диалоговом окне (см. рис. 34), можно изменять предлагаемые установки для различных компонент диаграммы. Например,
