Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы1_ТаблицаФорма.doc
Скачиваний:
2
Добавлен:
26.09.2019
Размер:
1.21 Mб
Скачать

1.2 Использование форм для ввода и редактирования данных.

  1. Цель работы: изучить возможности СУБД Access по созданию и использованию форм для работы с базой данных, приобрести навыки разработки форм в СУБД Access.

  2. Вопросы для изучения:

  • понятие «экранная форма»; виды экранных форм. Способы задания форм

  • элементы экранных форм и их основные свойства. Кнопки перемещения по записям

  • Переход из формы в режим таблицы

  • методика разработки экранных форм. Работа со списками

  1. Справочные сведения

Формаэто объект, служащий для ввода, изменения и просмотра записей в нужном формате. Например, в форме можно определить списки допустимых значений данных, выделить данные цветом или отображать сообщения об ошибках при вводе неверных данных. Несложно организовать отображение результатов вычислений. Форму можно выводить как на экран, так и на печать. Форма может содержать данные из одной или нескольких взаимосвязанных таблиц, а также не связанные с таблицами данные. Для описания формы используется методика визуального программирования.

Способы создания форм.

  1. Порядок выполнения работы:

    1. Создать форму для заполнения таблицы «Анкета»

  • Откройте окно базы данных.

  • Перейдите на вкладку «Создать».

  • Нажмите кнопку ФОРМА.

  • Выбрать Автоформа: ленточная, в качестве «источника данных» выберете таблицу «анкета».

    1. Изучить работу кнопок перемещения по записям

      Переход на одну запись вперед

      ►▌

      Переход на последнюю запись

      Переход на одну запись назад

      ►*

      Переход на чистую страницу, где можно ввести новую запись

      ▐◄

      Переход на первую запись

    2. Создайте таблицу для ввода групп, имеющихся на вашем курсе:

  • выбрать вкладку «Создание/таблицы»,

  • нажать кнопку создать.

  • в окне «новая таблица» выбрать пункт «конструктор»

  • создать структуру таблицы, для этого надо заполнить столбцы «имя поля» и «тип данных» следующим образом:

    Имя поля

    Тип данных

    Группа

    Текстовый

  • В ответ на вопрос “Создать ключевое поле сейчас” нажмите кнопку нет.

  • Таблицу назвать «группы»

Убрать поле код!

    1. Создать форму для заполнения таблицы «группы», заполнить эту форму, выполнив следующие действия:

  • Выбрать вкладку «Создать/формы»

  • Нажать кнопку другие формы/мастер форм.

  • Выбрать автоформу: в столбец», в качестве источника данных выбрать таблицу «группы»

  • Введите данные в форму «группы»

Обратите внимание на то, что если вы в поле «фамилии» введете новую фамилию, то она не появится в раскрывающемся списке фамилий. Убедитесь в этом!

    1. Создать самозаполняющийся список фамилий, чтобы при вводе новой фамилии эта фамилия автоматически попадала в список, и впоследствии эту фамилию можно было бы выбрать из списка, а не набирать заново. Для этого выполните следующие действия:

Создайте форму, основанную на таблице «анкета» с именем «форма для добавления записей». Эта форма будет использоваться для добавления в список новых пунктов.

  1. Создайте группу макросов. Будьте очень внимательны при выполнении этого пункта!!!

  • Выбрать вкладку «макросы», нажать кнопку создать.

  • Ввести макрокоманду «открыть форму»

  • Имя формы: «Форма для добавления записей»

  • Режим: Форма

  • Режим данных: Добавление

  • Режим окна: Обычное

  • Закрыть окно и сохранить макрос с именем «Добавление»

  • Создать следующий макрос:

  • Ввести макрокоманду «Выполнить команду»

  • Команда «Сохранить запись (Save Record

  • Ввести макрокоманду «Выделить обьект»

  • Тип объекта: Форма

  • Имя объекта: Анкета

  • В окне базы данных: Нет

  • Ввести макрокоманду «Обновление»

  • Имя элемента: Фамилия

  • Закрыть окно и сохранить макрос с именем «Закрытие»

  1. Переключитесь в форму «Форма для добавления записей» в режиме конструктора.

  2. Выбрать режим «вид/свойства»

  3. Открыть вкладку «События»

  4. Добавить макрос «Закрытие» в свойство «Закрытие формы»

  5. Закрыть форму

  1. Откройте в режиме конструктора форму «Анкета»

  2. Щелкните «правой мышкой» по полю «фамилия» выберете пункт «свойства»

  • Открыть вкладку «События»

  • Указать имя макроса «Добавление» в поле ввода свойства «Двойное нажатие кнопки»

    1. Проверьте работу созданных Вами макросов по созданию самозаполняющегося списка.

  • Переключитесь в режим формы «анкета»

  • Дважды щелкните мышкой по полю «фамилия», введите фамилию «Иванченко»,

  • Заполните остальные обязательные поля для записи с фамилией «Иванченко»

  • закройте форму. Вы опять в главной форме «Анкета»

  • Попробуйте раскрыть список фамилий, щелкнув мышкой по кнопке .

Если Вы аккуратно выполнили пункт 4.6, то в списке будет присутствовать фамилия «Иванченко»

    1. Закройте форму, сохранив внесенные изменения.

Контрольные вопросы

  1. С какой целью создаются экранные формы?

  2. Какие разновидности экранных форм допускаются в ACCESS?

  3. Что может быть источником данных для экранной формы?

  4. Из каких разделов и элементов может состоять экранная форма?

  5. На какие группы делятся свойства экранных форм и элементов управления?

  6. Какие элементы форм называют связанными и несвязанными?

  7. Как задать свойства формы, и какие из них обязательны?

  8. Чем простая (анкетная) форма отличается от табличной формы?

  9. В каких случаях применяют составную форму?

  10. Каковы условия правильной взаимосвязи главной и подчиненной форм?

  11. Каков порядок определения структуры БД в СУБД ACCESS?

  12. Сколько таблиц может содержать база данных ACCESS?

  13. В каком режиме описывается структура таблицы БД?

  14. Можно ли изменить структуру таблицы после ее создания?

  15. Какие типы полей БД предусмотрены в ACCESS?

  16. Каковы правила именования полей БД?

  17. Можно ли изменить тип поля в созданной таблице?

  18. Какая информация может храниться в полях типа «объект OLE»?

  19. Какие свойства поля должны быть определены обязательно?

  20. Что такое ключевое поле?

  21. Какие виды контроля данных могут автоматически выполняться в СУБД ACCESS?