
- •Isbn © СибАгс, 2009
- •Тема 1. Роль и место баз данных в автоматизированных информационных системах 6
- •Тема 2. Модели бд 18
- •Тема 3. Реляционная модель бд 27
- •Предисловие
- •Тема 1. Роль и место баз данных в автоматизированных информационных системах
- •Технология субд
- •Размещение и архитектура субд
- •Функции субд
- •Тема 2. Модели бд
- •Модели организации данных Иерархическая модель хранения данных
- •Сетевая модель данных
- •Типы связей в модели
- •Тема 3. Реляционная модель бд
- •Структура реляционной базы данных
- •Типы данных
- •Ограничения целостности бд
- •Аномалии вставки (insert)
- •Аномалии обновления (update)
- •Аномалии удаления (delete)
- •Тема 4. Проектирование бд
- •Проектирование по методу erd-модели
- •Инфологическое проектирование баз данных
- •Структура бд
- •Количество таблиц и их имена
- •Типы данных и типы полей
- •Тема 5. Работа в субд Access
- •Мастера Access
- •Нормализация
- •Создание таблиц
- •Определение связей и обеспечение целостности данных
- •Создание форм для ввода данных
- •Создание запросов
- •Создание отчетов
- •Варианты заданий для лабораторной работы
- •Заключение
- •Литература Основная литература
- •3.3.2. Дополнительная литература
- •Глоссарий
Создание форм для ввода данных
Формами называются настраиваемые диалоговые окна, сохраняемые в базе данных в виде объектов специального типа. Формы Access являются объектами базы данных, так же как таблицы и запросы. Формы используются в приложении для ввода и отображения данных. Формы предоставляют более удобный способ просмотра и правки данных в таблицах, чем режим Таблицы. Формы содержат так называемые элементы управления, с помощью которых осуществляется доступ к данным в таблицах. Элементами управления являются текстовые поля для ввода и правки данных, кнопки, флажки, переключатели, списки, надписи, а также рамки объектов для отображения графики и объектов OLE. Создание форм, содержащих необходимые элементы управления, существенно упрощает процесс ввода данных и позволяет предотвратить ошибки. Формы предоставляют функциональные возможности для выполнения многих задач, которые нельзя выполнить другими средствами. Формы позволяют выполнять проверку корректности данных при вводе, проводить вычисления, и обеспечивают доступ к данным в связанных таблицах с помощью подчиненных форм.
Пример 11: Создать формы для ввода информации в каждую из ранее созданных таблиц (из примера 8).
Автоматическое создание формы на основе таблицы или запроса
Автоматически создаваемые формы (автоформы) бывают нескольких видов, каждый из которых отличается способом отображения данных.
Автоформа, организованная "в столбец".
В такой форме поля каждой записи отображаются в виде набора элементов управления, расположенных в один или несколько столбцов. Это компактное и, пожалуй, самое удачное представление для быстрого создания формы.
Табличная.
Форма будет выглядеть так же, как обычная таблица.
Ленточная.
В такой форме поля каждой записи располагаются в отдельной строке. Это очень удобно для работы с большими массивами данных, поскольку данные располагаются в таком же порядке, как в простой таблице. Преимуществом именно этого представления формы по сравнению с табличным является то, что каждое поле представлено в виде отдельного элемента управления, которое можно оформить в любом стиле.
Автоматически созданная форма включает все поля выбранного источника данных.
Создадим простую форму для таблицы Клиенты с помощью средства автоматического создания форм:
Щелкните по ярлыку Формы в окне База данных и нажмите кнопку Создать. Появится диалоговое окно Новая форма
В списке диалогового окна Новая форма выделите один из вариантов автоформы, например: Автоформа: в столбец.
В поле со списком, находящимся в нижней части диалогового окна Новая форма, содержатся имена всех таблиц и запросов базы данных, которые могут быть использованы в качестве источника данных для формы. Щелкните левой кнопкой мыши по кнопке со стрелкой, чтобы раскрыть список, и выберите в нем нужный элемент - таблицу Клиенты.
Нажмите кнопку ОК.
В результате будет автоматически создана и открыта форма выбранного вида. Чтобы созданную форму можно было использовать в дальнейшем, ее необходимо сохранить. Для сохранения формы выберите команду Файл, Сохранить или нажмите на кнопку Сохранить на панели инструментов Режим формы. В поле Имя формы появившегося диалогового окна Сохранение введите Форма_Клиенты и нажмите кнопку ОК.
В результате мастером будет создана форма в соответствии с выбранными параметрами и сохранена с указанным именем (Форма_Клиенты), затем эта форма будет открыта в заданном режиме
Примечание:
Для любой формы можно изменить ее представление, определяющее режим отображения данных. В окне свойств формы можно выбрать один из пяти вариантов: Простая форма, Ленточная формы, Таблица. Чтобы изменить режим отображения данных, откройте форму в режиме Конструктора, Из Режим форма в режим Конструктор достаточно просто переключиться с помощью кнопки Вид на панели инструментов или с помощью команды Режим формы из меню Вид. Затем откройте окно свойств формы. Щелкните левой кнопкой мыши по кнопке со стрелкой, чтобы раскрыть список, и выберите соответствующий элемент в раскрывающемся списке Режим по умолчанию.
Создание формы с помощью мастера
Намного проще и быстрее создавать формы с помощью мастера, а затем усовершенствовать их в режиме Конструктора. С помощью мастера можно создавать формы на основе одной таблицы и более сложные формы на основе нескольких таблиц и запросов, имеющие подчиненные формы. Мастер форм разбивает процесс создания формы на несколько этапов. На каждом этапе требуется установить определенные параметры в одном из диалоговых окон мастера, каждое из которых определяет один шаг создания формы. Если на каком-нибудь шаге была допущена ошибка или возникла необходимость изменения каких-либо установленных параметров, для возвращения к предыдущему шагу нажмите кнопку Назад. Кроме того, в любой момент можно нажать кнопку Отмена для отказа от создания формы и возвращения к окну базы данных.
Создадим с помощью мастера подчиненную форму для таблиц Офисы и Агенты (многотабличная форма):
Щелкните по ярлыку Формы в окне базы данных.
Нажмите кнопку Создать на панели инструментов окна базы данных. В списке вариантов в появившемся диалоговом окне Новая форма выделите элемент Мастер форм и нажмите кнопку ОК. То же самое можно сделать, дважды щелкнув по ярлыку Создание формы с помощью мастера, находящемуся перед списком существующих форм в базе данных. Появится первое диалоговое окно Мастера форм.
В поле со списком Таблицы и запросы, как и в раскрывающемся списке в окне Новая форма, будут отображены имена всех таблиц и запросов базы данных, которые могут использоваться в качестве источника данных для формы. Раскройте этот список и выберите имя таблицы или запроса. В нашем примере это таблица Офисы.
Важно: Первой должна быть выбрана таблица, в которой поле для связи со второй таблицей Агенты является ключевым (в данном случае - таблица Офисы).
В списке Доступные поля этого диалогового окна отображаются все поля выбранной таблицы. Добавление полей в форму позволит просматривать и редактировать данные выбранной таблицы. Чтобы добавить в создаваемую форму только некоторые поля, выделите каждое из этих полей и нажмите кнопку ">". Выделенное поле будет перемещено из списка Доступные поля в список Выбранные поля. Чтобы добавить в создаваемую форму сразу все поля из выбранной таблицы, нажмите кнопку ">>".
Примечание:
В форме поля появляются, в соответствии с последовательностью их расположения в списке Выбранные поля.
Повторите два предыдущих пункта для таблицы Агенты.
Примечание:
Из таблицы Агенты выбираются только те поля, которых нет в таблице Офисы (поля: ФамилияАгента, ИмяАгента и ОтчествоАгента).
Нажмите кнопку Далее для отображения второго диалогового окна.
Во втором диалоговом окне мастера необходимо выбрать вид представления данных – Подчиненные формы или Связанные формы.
Примечание:
Многотабличная форма может состоять из основной части и одной или нескольких подчиненных включаемых форм, т. е. быть составной. Подчиненная форма, как правило, строится на основе таблицы, подчиненной относительно таблицы-источника основной части формы. Мастер форм позволяет создать связанные формы, которые не включаются непосредственно в форму. При этом вместо подчиненной формы включается лишь кнопка, представляющая связанную форму. Если необходимо просмотреть подчиненные записи, связанная подчиненная форма вызывается на экран нажатием этой кнопки. Открывающееся содержимое связанной формы синхронизировано с текущей записью формы. Этот способ построения многотабличной формы удобен в сложных формах, перегруженных большим числом элементов управления, а также в случае, когда пользователю нет необходимости постоянно видеть связанные данные.
Выберите Подчиненные формы и нажмите кнопку Далее для отображения следующего диалогового окна Мастера форм.
В третьем диалоговом окне мастера можно определить вид формы. Выберите один из переключателей, например ленточный.
Примечание:
Если создать ленточную форму и оформить ее подходящим образом с помощью форматирования элементов управления, то увидим, что в хорошо оформленной ленточной форме данные просматривать намного удобнее, чем в табличной форме.
После выбора подходящего режима отображения данных в форме нажмите кнопку Далее для отображения следующего диалогового окна Мастера форм.
Четвертое диалоговое окно Мастера форм предназначено для выбора стиля оформления новой формы. Мастер предлагает несколько стандартных стилей оформления. Можно определить собственные стили оформления форм с помощью диалогового окна Автоформат. Тогда эти стили будут отображаться вместе со стандартными в этом диалоговом В окне Мастера форм. Выберите один из предлагаемых стилей и нажмите кнопку Далее.
В последнем диалоговом окне Мастера форм требуется указать названия формы и подчиненной формы. В поле ввода этого диалогового окна введите название формы: Форма_Офисы. Чтобы отобразить созданную мастером форму в режиме Формы, выберите переключатель Открыть форму для просмотра и ввода данных. А если после автоматического создания формы с помощью мастера требуется внести собственные изменения, выберите переключатель Изменить макет формы, тогда созданная форма будет открыта в режиме Конструктора. Если необходима справка о работе с созданной формой, установите флажок Вывести справку по работе с формой?, после чего нажмите кнопку Готово.
В результате мастером будет создана форма в соответствии с выбранными параметрами и сохранена с указанным именем (Форма_Офисы), затем эта форма будет открыта в заданном режиме.
Созданные формы Форма_Клиенты и Форма_Офисы готовы к использованию. Однако можно улучшить их внешний вид, изменив некоторые параметры оформления в режиме Конструктора.
Работа с формой в режиме Конструктора
Отредактируем форму "Форма_Клиент" в режиме конструктора:
добавим заголовок Клиенты;
заменим надписи полей НаименованиеКлиента и НомерСчетаКлиента на Клиент и № счета соответственно.
Откройте форму "Форма_Клиент" в режиме Конструктора
При работе в режиме Конструктора форм используются следующие элементы окна приложения.
Панель инструментов Панель элементов. При переходе в режим Конструктора эта панель инструментов отображается на экране и предназначена для добавления в форму новых элементов управления.
Примечание:
Панель элементов появляется на экране всякий раз при переходе в режим Конструктора. Если закрыть эту панель инструментов, в следующий раз она не появится. Тогда, чтобы отобразить ее, нажмите кнопку Панель элементов на панели инструментов Конструктор форм или выберите команду Вид, Панели инструментов, а затем установите флажок Панель элементов.
Панель инструментов Конструктор форм. Панель содержит кнопки, предназначенные для разработки форм. Основные команды, меню, используемые в режиме Конструктора форм, продублированы в виде кнопок на панели инструментов Конструктор форм.
Панель инструментов Формат (форма/отчет) предназначена для форматирования выделенных элементов управления. Форматирование элемента управления включает такие действия, как задание цвета фона и рамок, задание стиля и цвета текста.
Вертикальная и горизонтальная линейки предназначены для разметки формы по заданным размерам и выделения нескольких соседних элементов управления, лежащих в одном вертикальном или горизонтальном сегменте макета формы от одной отметки на линейке до другой.
Правая граница макета формы позволяет задать ширину формы. Чтобы изменить ширину формы, перетащите правую границу макета формы с помощью мыши вправо или влево.
Нижняя граница макета формы позволяет определить высоту формы. Чтобы изменить высоту формы, перетащите нижнюю границу макета формы с помощью мыши вниз или вверх.
Вертикальная и горизонтальная полосы прокрутки позволяют просматривать части формы, оказавшиеся за границами экрана в режиме Конструктора.
Структура формы
Макет формы состоит из разделов. Любая форма может включать следующие разделы:
раздел Заголовок формы определяет верхнюю часть формы. Этот раздел добавляется в форму вместе с разделом примечания формы. В область заголовка формы можно поместить текст, графику и другие элементы управления. При печати многостраничной формы раздел заголовка отображается только на первой странице, а раздел примечание будет отображен только внизу последней страницы.;
раздел Верхний колонтитул (Нижний колонтитул) определяет верхний колонтитул страницы при печати формы. Этот раздел отображается только тогда, когда форма открыта в режиме Предварительного просмотра. При печати многостраничной формы верхний колонтитул отображается вверху каждой страницы (нижний колонтитул – внизу);
раздел Область данных определяет основную часть формы, содержащую данные, полученные из источника. Данный раздел может содержать элементы управления, отображающие данные из таблиц и запросов, а также неизменяемые данные, например надписи. При печати многостраничной формы этот раздел отображается на каждой странице;
Из всех перечисленных разделов обязательным является только раздел области данных. Высоту области любого раздела формы можно изменить с помощью мыши, перетаскивая нижнюю часть раздела вверх или вниз.
Примечание:
При создании новой пустой формы при помощи Конструктора форм разделы заголовка и примечания не добавляются. При необходимости выберите команду Вид, Заголовок/примечание формы. Если форма уже содержит эти разделы, то команда Заголовок/примечание формы будет отмечена флажком. Для удаления разделов заголовка и примечания формы сбросьте этот флажок.
Для добавления или удаления разделов верхнего и нижнего колонтитулов страницы выберите команду Вид, Колонтитулы. Если форма уже содержит эти разделы, то команда Колонтитулы будет отмечена флажком. Для удаления разделов верхнего и нижнего колонтитула страницы сбросьте этот флажок.
Если разделы заголовка и примечания формы или разделы верхнего и нижнего колонтитулов содержат текст либо другие элементы управления формы, то перед попыткой удалить эти разделы будет отображено диалоговое окно, предупреждающее об удалении содержимого заголовка и примечания.
Высоту раздела формы можно изменить, перетаскивая границу раздела при помощи мыши. Для этого указатель мыши помещается над границей раздела так, чтобы он принял вид горизонтальной черты с двумя вертикальными стрелками, нажимается левая кнопка мыши и перетаскивается граница раздела для получения нужного размера.
Высота раздела области данных определяется вертикальным размером окна формы, а также размером заголовка и примечания формы. Для изменения высоты раздела области данных его нижняя граница перетаскивается при помощи мыши вверх (для уменьшения высоты) или вниз (для увеличения). В режиме Формы вертикальная полоса прокрутки в окне формы появляется только для просмотра раздела области данных.
Создание заголовка
Расширим область заголовка формы, установив курсор мыши на границу области заголовка и области данных и перемещая эту границу на нужное расстояние.
Создадим графический элемент Надпись. Начинается создание элемента щелчком мыши на кнопке панели элементов Надпись, после чего становятся доступными кнопки форматирования на панели Формат (форма/отчет). Теперь может быть выбран нужный шрифт и другие параметры оформления.
Переместим курсор мыши на место начала текста в области заголовка формы (предварительно расширив ее курсором мыши). Нажмем кнопку мыши и, не отпуская ее, растянем рамку текста до нужного размера. Введем текст (Клиенты).
Завершим создание элемента Надпись нажатием клавиши <Enter> или щелчком мыши вне рамки элемента.
Замена надписи полей
в области данных установить курсор в надпись поля НаименованиеКлиента и заменить на Клиент;
уменьшить размер надписи;
повторить действия для надписи поля НомерСчетаКлиента.
Задание для самостоятельной работы
Создать для ввода информации в таблицы базы данных (БД) рассмотренной в главе Нормализация (Товар-Накладная) простую и подчиненную формы.