Тип отношения «один-ко-многим» является наиболее общим
MS ACCESS
СУБД ACCESS
Лабораторные работы
Лаб. 1
Тема: Создание таблиц. Использование форм для ввода и редактирования данных
Задание 1
1. Создать новую базу данных ( Файл/создать базу данных)
2. Окно базы данных состоит из шести вкладок, выбрать вкладку «таблица» и нажать кнопку создать
3. В окне «новая таблица» выбрать пункт «конструктор»
4. Создать структуру таблицы, для этого надо заполнить столбцы «имя поля» и «тип данных» следующим образом:
Имя поля | Тип данных |
Фамилия | Текстовый (щелкните мышкой) |
Имя | Текстовый |
Отчество | Текстовый |
Дата рождения | Дата/время |
Адрес | Текстовый |
Телефон | Текстовый |
Группа | Текстовый |
5. Завершив ввод структуры таблицы, сохраните ее с именем «анкета», выполнив команду Файл/Сохранить. В ответ на вопрос “Создать ключевое поле сейчас” нажмите кнопку да.
В вашей таблице появится поле с именем “код”. Это поле называется первичным ключом и однозначно идентифицирует каждую запись в таблице. Тип данных у этого поля обозначен как “Счетчик”. Это означает, что каждый раз при создании новой записи значение счетчика будет увеличиваться на 1. В результате у каждой записи формируется свой номер, который и является первичным ключом.
Поля обладают свойствами. От свойств полей зависит, какие типы данных можно вносить в поле, а какие нет, а также то, что можно делать с данными, содержащимися в поле.
|
|
Задание 2
1. Определить свойства полей на вкладке “Общие” следующим образом:
Поле | Свойства полей | ||||
Размер | Формат поля | Подпись | Обязательное поле | Индексированное поле | |
Фамилия | 30 | Фамилия | да | Да(совпадения допускаются) | |
Имя | 12 | Имя | да | нет | |
Отчество | 30 | Отчество | нет | нет | |
Дата рождения | Краткий формат даты | Дата рождения | да | нет | |
Адрес | 50 | Адрес | да | нет | |
Телефон | 15 | нет | нет | ||
Группа | 15 | Группа | да | Да(совпадения допускаются) |
Задание 3
1. Открыть таблицу “Вид/ режим таблицы”.
2. Заполнить строки .
Будьте внимательны при заполнении столбца “дата рождения” - разделители проставляются автоматически.
На предложение системы дать имя созданной таблице ввести имя «анкета» СОХРАНИТЬ! (файл. сохранить)
Задание 4
1. На основе созданной таблицы создайте список фамилий студентов Вашей группы, для этого в режиме конструктора для поля “фамилия” откройте вкладку “подстановка”и установите следующие свойства для поля “фамилия”
Тип элемента управления | Поле со списком |
Тип источника строк | Таблица или запрос |
Источник строк | 1. Щелкните мышкой, 2. Нажмите кнопку ….. 3. В появившемся окне “построителя запросов” : · добавить таблицу “Анкета”, · закрыть окно “добавление таблицы” · перетащить с помощью мыши поле “фамилия” в “поле” бланка запроса · в поле “вывод на экран” должен стоять флажок √ |
Ограничиться списком | Нет |
4.В результате выполнения Задания 4 в таблице “Анкета” в поле “фамилия” при щелчке мышью должна появиться кнопка, обеспечивающая выбор из списка.
|
|
Задание 5
Создать форму для заполнения таблицы «Анкета»
· Откройте окно базы данных
· Перейдите на вкладку «формы»
· Нажмите кнопку создать.
· Выбрать Автоформа: ленточная, в качестве «источника данных» выберите таблицу «анкета».
Задание 6
1. Создайте таблицу для ввода групп, имеющихся на третьем курсе:
· выбрать вкладку «таблицы»,
· нажать кнопку создать.
· в окне «новая таблица» выбрать пункт «конструктор»
· создать структуру таблицы, для этого надо заполнить столбцы «имя поля» и «тип данных» следующим образом:
Имя поля | Тип данных |
Группа | Текстовый (щелкните мышкой) |
· В ответ на вопрос “Создать ключевое поле сейчас” нажмите кнопку нет.
|
|
· Таблицу назвать «группы»
Задание 7
Создать форму для заполнения таблицы «группы», заполнить эту форму, выполнив следующие действия:
· Выбрать вкладку «формы»
· Нажать кнопку создать.
· Выбрать «автоформу : в столбец», в качестве источника данных выбрать таблицу «группы»
· Введите данные в форму «группы»
Задание 8.
Создать самозаполняющийся список фамилий, чтобы при вводе новой фамилии эта фамилия автоматически попадала в список .и впоследствии эту фамилию можно было бы выбрать из списка, а не набирать заново. Для этого выполните следующие действия:
1. Создайте форму, основанную на таблице «анкета» с именем «форма для добавления записей». Эта форма будет использоваться для добавления в список новых пунктов.
2. Создайте группу макросов. Будьте очень внимательны при выполнении этого пункта!
· Выбрать вкладку «макросы», нажать кнопку создать.
· Ввести макрокоманду «открыть форму»
ü Имя формы: « форма для добавления записей»
ü Режим: Форма
ü Режим данных: Добавление
ü Режим окна: Обычное
· Закрыть окно и сохранить макрос с именем «Добавление»
· Создать следующий макрос:
· Ввести макрокоманду «Выполнить команду»
ü Команда «Сохранить запись »
|
|
· Ввести макрокоманду «Выделить обьект»
ü Тип обьекта: Форма
ü Имя обьекта: Анкета
ü В окне базы данных: Нет
· Ввести макрокоманду «Обновление»
ü Имя элемента: Фамилия
· Закрыть окно и сохранить макрос с именем «Закрытие»
3. Переключитесь в форму «Форма для добавления записей» в режиме конструктора.
4. Выбрать режим «вид/свойства»
5. Открыть вкладку «События»
6. Добавить макрос «Закрытие» в свойство «Закрытие формы»
7. Закрыть форму
8. Откройте в режиме конструктора форму «Анкета»
9. Щелкните «правой мышкой» по полю «фамилия» выберете пункт «свойства»
· Открыть вкладку «События»
· Указать имя макроса «Добавление» в поле ввода свойства «Двойное нажатие кнопки»
Задание 9.
1. Проверьте работу созданных Вами макросов по созданию самозаполняющегося списка.
· Переключитесь в режим формы « анкета»
· Дважды щелкните мышкой по полю «фамилия», введите фамилию «Королев»,
· Заполните остальные обязательные поля для записи с фамилией «Королев»
· закройте форму. Вы опять в главной форме «Анкета»
· Попробуйте раскрыть список фамилий, щелкнув мышкой по кнопке ß .
Если Вы правильно выполнили Задание 5, то в списке Вы обнаружите фамилию «Королев»
2. Закройте форму, сохранив внесенные изменения.
Лаб. 2
Тема: Проектирование многотабличных баз данных
Задание 1
1. Создать таблицу «Преподаватели»: Используйте Мастер таблиц.
· Выбрать для создания таблицы образец «Сотрудники» и выбрать из предложенного перечня полей следующие:
ü Фамилия
ü Имя
ü Отчество
ü Должность
ü Название отдела (переименовать, как “кафедра”)
· Назвать созданную таблицу “Преподаватели” Связи не определять, т.е. нажать кнопку Далее.
· Выбрать режим “непосредственный ввод данных в таблицу”
· В режиме конструктора определить тип данных для каждого поля
Имя поля | Тип данных |
Фамилия | Текстовый (щелкните мышкой) |
Имя | Текстовый |
Отчество | Текстовый |
Должность | Текстовый |
Кафедра | Текстовый |
· Определить свойства полей на вкладке “Общие” в режиме конструктора следующим образом:
Поле | Свойства полей | |||
Размер | Подпись | Обязательное поле | Индексированное поле | |
Фамилия | 30 | Фамилия | да | Да(совпадения допускаются) |
Имя | 12 | Имя | да | нет |
Отчество | 30 | Отчество | Да | нет |
Должность | 20 | Должность | нет | нет |
Кафедра | 50 | Кафедра | Да | нет |
· Для поля «кафедра» изменить элемент управления следующим образом:
ü Откройте вкладку «Подстановка» и установите следующие свойства для поля «кафедра»
Тип элемента управления | Поле со списком |
Тип источника строк | Список значений. |
Источник строк | Введите список кафедр, используя в качестве разделителя точку с запятой “ ;“ |
Ограничиться списком | Да |
Задание 2
1. Создайте форму для заполнения таблицы «Преподаватели».
· Выбрать вкладку «Формы», и создать форму, используя Мастер форм, определив в качестве источника таблицу «Преподаватели»
· Отметить мышкой все поля для создания формы
· Выбрать вид формы «ленточная»
· Стиль выбрать на свое усмотрение
· Имя формы «Преподаватели»
· Дальнейшие действия «Открыть форму для просмотра»
2. Заполните форму. Обратите внимание на то, столбец «кафедра» заполняется путем подстановки из сформированного Вами списка.
Задание 3:
Использование элемента управления типа – «поле со списком»
1. Создать таблицу «Дисциплины» в режиме конструктора с параметрами
Имя поля | Тип данных |
Дисциплина | Текстовый |
2. Определить свойства полей таблицы “Дисциплины” на вкладке “Общие” следующим образом:
Поле | Свойства полей | |||
Размер | Подпись | Обязательное поле | Индексированное поле | |
Дисциплина | 20 | Дисциплина | Да | Да(совпадения не допускаются) |
3. Создайте форму для заполнения таблицы «Дисциплины». Для этого:
· Перейдите на вкладку «формы»
· Нажмите кнопку создать.
· Выбрать Автоформа: ленточная, в качестве «источника данных» выберете таблицу «Дисциплины».
4. Введите названия дисциплин, которые читаются на третьем курсе в форму
Задание 4
1. Создайте таблицу «Экзамен» в режиме конструктора таблиц с параметрами
Имя поля | Тип данных |
Дисциплина | Текстовый |
Группа | Текстовый |
Студент | Текстовый |
Результат контроля | Текстовый |
2. Определить свойства полей на вкладке “Общие” следующим образом:
Поле | Свойства полей | |||
Размер | Подпись | Обязательное поле | Индексированное поле | |
Дисциплина | 15 | Дисциплина | Да | Да(совпадения допускаются) |
Группа | 10 | Группа | Да | Да(совпадения допускаются) |
Студент | 30 | Студент | Да | Да(совпадения допускаются) |
Результат контроля | 20 | Результат контроля | Да | Да(совпадения допускаются) |
Так как у Вас в базе уже имеется таблица с перечнем групп, таблица с перечнем дисциплин, а также таблица «Анкета» с перечнем студентов этим надо воспользоваться для автоматического заполнения полей «группа», «дисциплина» и «Студент» в создаваемой Вами таблице «Экзамен» Это можно сделать с помощью элемента управления полем
Задание 5
1. Для поля «группа» изменить элемент управления:
· Откройте вкладку «Подстановка» и установите следующие свойства для поля «группа»
Тип элемента управления | Поле со списком |
Тип источника строк | Таблица или запрос. |
Источник строк | 5. Щелкните мышкой, 6. Нажмите кнопку ….. 7. В появившемся окне “построителя запросов” : · добавить таблицу “Группы”, · закрыть окно “добавление таблицы” · перетащить с помощью мыши поле “Группа” в “поле” бланка запроса в поле “вывод на экран” должен стоять флажок √ |
Ограничиться списком | Да |
2. Аналогично изменить элемент управления для полей «дисциплина» и «студент», используя в качестве строк соответственно таблицы «дисциплины» и «анкета».
3. Для поля «результат контроля» изменить элемент управления следующим образом:
· Откройте вкладку «Подстановка» и установите следующие свойства для поля «результат контроля»
Тип элемента управления | Поле со списком |
Тип источника строк | Список значений. |
Источник строк | Введите список оценок, используя в качестве разделителя точку с запятой “ ;“ (отлично;хорошо;удовлетворительно;неудовлетворительно) |
Ограничиться списком | Да |
Задание 6
1. Создайте форму для заполнения таблицы «Экзамен»
· Перейдите на вкладку «формы»
· Нажмите кнопку создать.
· Выбрать Автоформа: ленточная, в качестве «источника данных» выберите таблицу «Экзамен».
Задание 7
1. Пользуясь созданной в Задании 4 формой «Экзамен» введите данные по двум дисциплинам на Ваш выбор по всем студентам своей группы в таблицу «Экзамен», . Оценки проставлять произвольно (желательно разнообразные).
Лаб. 3
Тема: Проектирование многотабличных баз данных
· Элемент управления типа поле со списком
· Элемент управления типа - флажок
· Связи между таблицами
Задание 1
1. Создайте таблицу «Зачет» в режиме конструктора таблиц с параметрами
Имя поля | Тип данных |
Дисциплина | Текстовый |
Группа | Текстовый |
Студент | Текстовый |
Результат | Логический |
2. Определить свойства полей на вкладке “Общие” следующим образом:
Поле | Свойства полей | ||||
Размер | Формат поля | Подпись | Обязательное поле | Индексированное поле | |
Дисциплина | 15 | Дисциплина | Да | Да(совпадения допускаются) | |
Группа | 15 | Группа | Да | Да(совпадения допускаются) | |
Студент | 30 | Студент | Да | Да(совпадения допускаются) | |
Результат | Да/Нет | Результат | Да | Да(совпадения допускаются) |
Так как у Вас в базе уже имеется таблица с перечнем групп, таблица с перечнем дисциплин, а также таблица «Анкета» с перечнем студентов этим надо воспользоваться для автоматического заполнения полей «группа», «дисциплина» и «Студент» в создаваемой Вами таблице «Зачет»
Это можно сделать с помощью элемента управления полем
3. Для поля «группа» изменить элемент управления:
ü Откройте вкладку «Подстановка» и установите следующие свойства для поля «группа»
Тип элемента управления | Поле со списком |
Тип источника строк | Таблица или запрос. |
Источник строк | 8. Щелкните мышкой, 9. Нажмите кнопку ….. 10. В появившемся окне “построителя запросов” : · добавить таблицу “Группы”, · закрыть окно “добавление таблицы” · перетащить с помощью мыши поле “Группа” в “поле” бланка запроса · в поле “вывод на экран” должен стоять флажок √ |
Ограничиться списком | Да |
4. Аналогично изменить элемент управления для полей «дисциплина» и «студент», используя в качестве строк соответственно таблицы «дисциплины» и «анкета».
Задание 2
1. Создайте форму для заполнения таблицы «Зачет»
· Перейдите на вкладку «формы»
· Нажмите кнопку создать.
· Выбрать Автоформа: ленточная, в качестве «источника данных» выберете таблицу «Зачет».
2. Пользуясь созданной формой «Зачет» введите данные по всем студентам своей группы по двум дисциплинам на свой выбор .
Зачет отмечайте флажком √.
У такой формы контроля, как «зачет» может быть два состояния: «зачет» или «незачет». Для индикации состояния, которое может иметь одно из двух допустимых значений, используется элемент управления типа флажок,
Теперь сделаем так, чтобы рядом с флажком появлялась надпись «зачет», а если флажка нет ( то есть Вы не отметили его √ ), то пусть появляется надпись «незачет»
Задание 3
Для того, чтобы посредством флажка ввести поле одно из двух значений надо воспользоваться функцией управления Iif , а для этого следует выполнить следующие действия:
1.Откройте форму «Зачет» в режиме конструктора
2. Справа от поля типа флажок ( √ .) добавить элемент типа «поле»:
· Щелкните мышкой по значку аб на панели инструментов и справа от флажка еще раз щелкните мышкой, появится поле с произвольной надписью ( поле…..).
3.Нажмите «правую мышку» на этом поле, раскройте пункт «свойства», Введите в свойство «данные» следующее выражение
=Iif([Результат];”Зачет”;”Незачет”) .
4. Установить для свойства “Вывод на экран” для надписи ( надпись находится слева от поля ) поля значение “нет”
Задание 4
1. Просмотрите форму «Зачет» в режиме формы. Теперь установленный флажок будет соответствовать значению «зачет», а снятый флажок – значению «незачет».
2.Пользуясь новым элементом управления «флажок» проставьте результаты по зачету заново.
Таблица состоит из строк и столбцов и имеет уникальное имя в базе данных. База данных содержит множество таблиц, связь между которыми устанавливается с помощью совпадающих полей. MS Access поддерживает четыре типа отношений между таблицами:
Один-к-одному (каждая запись в одной таблице соответствует только одной записи в другой таблице
Один-ко-многим (каждая запись в одной таблице соответствует многим записям в другой таблице)
Много-к-одному (аналогична записи «один-ко-многим)
Много-ко-многим ( одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы либо одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы)
Тип отношения «один-ко-многим» является наиболее общим
Рассмотрим на конкретном примере, для чего может понадобиться связь между таблицами.
Допустим Вы уже по всем группам заполнили таблицы «Экзамен», и «Зачет» полностью и выяснилось, что одна из дисциплин в таблице «дисциплины» названа неверно, что в свою очередь отразилось на заполнении таблиц «Зачет», либо «Экзамен». Аналогичная ситуация может случиться с фамилией студента и.т.д…..
Как сделать, чтобы исправив название дисциплины в таблице «Дисциплины», либо, изменив фамилию студента в таблице «Анкета», таблицы « Зачет» и «Экзамен» были бы исправлены автоматически. Для этого надо установить связи между таблицами:
Задание 5
Установите связь между таблицами «Зачет» –[ «Дисциплины», «Анкета» ]
Отношение «один-ко-многим» создается в том случае, когда поле , по которому устанавливается связь ( со стороны отношения «один») должно иметь свойство:
Индексированное поле - Да, совпадения не допускаются»
Это относится к полю «фамилия» в таблице «анкета»
и полю «дисциплина» - в таблице «дисциплины»
Проверьте наличие этих свойств в ваших таблицах, прежде, чем приступить к выполнению задания
1. Для этого выполните следующие действия:
· Перейти в режим «Таблицы»
· Если у вас есть открытые таблицы, или формы - закройте их.
· Нажмите кнопку «Схема данных» на панели управления.
· Пользуясь «правой мышкой» добавьте в схему все таблицы «Зачет» ,«Анкета», «Дисциплины»
· Закройте окно «Добавление таблицы» В схеме данных должны появиться три схемы выше указанных таблиц.
· Поместите указатель мыши на поле «Дисциплины» таблицы «Зачет» и, нажмите левую кнопку и, не отпуская ее, перетащите появившийся значок поля на поле «Дисциплина» таблицы «Дисциплины». Появится диалоговое окно «Связи»
· Поставьте флажок «Обеспечение целостности данных»
· Поставьте флажок «Каскадное обновление связанных полей»
· Нажмите кнопку Обьединение.
· Выберете опцию 3, OK.
· Нажмите кнопку Создать. , чтобы подтвердить создание связи.
· Перейдите в окно « Схема данных», Вы должны увидеть появившуюся связь «один-ко-многим»
2.Аналогично создайте связь между полем «фамилия» таблицы «анкета» и полем «студент» таблицы «Зачет». (последовательность действий та же, что и при установлении связи между таблицами «Дисциплины» – «Зачет», только связываются другие поля)
Задание 6
Если Вы правильно выполнили задание 1, то:
После установления связи изменение полей «фамилия» и«дисциплина» соответственно в таблицах «анкета» «дисциплины» автоматически повлечет связанных с этими полями полей «дисциплина» и «студент»в таблице «Зачет». В свою очередь Вы не сможете ввести в таблицу « Зачет» новые фамилии, или дисциплины, если они отсутствуют в таблицах «Анкета» и «Дисциплины»
1. Установите связь между таблицами «Экзамен» - [«Анкета», «Дисциплины»]
Лаб. 4
Тема: Подчиненные формы. Форматирование форм
· Просмотр данных, имеющих отношение один-ко-многим
Внешний вид формы можно изменить:
· Изменить стиль
· Изменить шрифт
· Добавить надписи
· Удалить ненужные поля
· Вставить рисунок, диаграмму и.т.д.
Допустим, Вам требуется посмотреть данные результатов экзамена по каждому студенту в отдельности, либо по каждой дисциплине в отдельности, используя уже готовую таблицу, где у Вас занесены общие результаты по всем студентам и по всем дисциплинам.
Дата добавления: 2018-02-15; просмотров: 367; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!