Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Задание 7. Установление связи «многие-ко-многим»

Определим тип связи между таблицами Преподаватель и Дисциплина. С одной стороны, один преподаватель ведет, как правило ведет, несколько дисциплин. С другой стороны, одну дисциплину может вести несколько преподавателей. Поэтому между таблицами Преподаватель и Дисциплина имеет место связь "многие-ко-многим".

Фактически в СУБД Access можно установить только два вида связей «один-ко-многим» и «один-к-одному». Эти связи можно установить непосредственно или, используя Мастер подстановок.

Для установления связи " многие-ко-многим " между таблицами Преподаватель и Дисциплина надо создать вспомогательную (промежуточную) таблицу Преподаватель - Дисциплина со следующей структурой (Рис. 12). Между таблицами Преподаватель и Дисциплина и новой таблицей будут установлены связи «один-ко-многим».

Рис. 12. Структура таблицы Преподаватель-Дисциплина

 

Установить дополнительные свойства таблицы (Таблица 6).

 

Таблица 6.Дополнительные свойства таблицы Преподаватель-Дисциплина

Имя поля Вкладка Общие Вкладка Подстановка
  Размер и другие свойства Обязательное поле  
Код ПД      
Код дисциплины   Да из таблицы Дисциплина поле Название
Код преподавателя   Да из таблицы Преподаватель поле Фамилия, Имя, Отчество

Данными таблицу не заполнять.

Задание 8. Создание таблицы Оценка

Создать таблицу Оценка со следующей структурой (Рис. 13).

Установить дополнительные свойства таблицы (Таблица 7).

Примечание.

 

1. Таблицу Оценка данными НЕ заполнять.

2. Соглашение о значениях оценок – 0 (неявка), 2, 3, 4, 5 (оценки за экзамен, курсовые работы и пр.), -1, 1 (зачет «не сдан», «сдан»).

3. Созданная таблица Оценка позволяет учитывать все оценки, полученные студентом во время обучения. Она является расширенным аналогом зачетной книжки. В отличие от зачетной книжки, где фиксируется оценка только тогда, когда дисциплина сдана положительно, в таблице Оценка можно вести учет неявок студента на экзамен, повторных пересдач дисциплины.

 

Рис. 13. структура таблицы Оценка

 

Таблица 7. Дополнительные свойства таблицы Оценка

Имя поля Вкладка Общие Вкладка Подстановка
Размер и другие свойства Обязательное поле  
Код записи      
Код студента   Да Из таблицы Студенты поля Фамилия, Имя
Семестр Байт Да Список с фиксированным набором значений – 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
Дата Краткий формат даты   Да  
Код ПД   Да Из таблицы Преподаватель-Дисциплина поле Код ПД
Вид контроля   Да Список с фиксированным набором значений – зачет, экзамен, курсовая работа, отчет
Оценка Целое Да Список с фиксированным набором значений – 0, 2, 3, 4, 5, -1, 1

Задание 9. Обеспечение целостности данных

Установить обеспечение целостности данных для таблиц.

При конструировании таблиц мы фактически создали связи, когда использовали Мастер подстановок для подстановки значений из одной таблицы в другую. На завершающем этапе подстановки появлялось окно сообщения о создании связи (см. задания 1.6, 1.7, 1.8).

Чтобы просмотреть созданные связи, надо закрыть все созданные таблицы, открыть на ленте вкладку Работа с базами данных в группе Показать или скрыть выбрать кнопку . Откроется окно Схема данных.

Чтобы в данном окне отобразить все данные о связях между созданными вами таблицами, в выбранной группе инструментов нажмите кнопку Все связи .

В этом же окне можно создать недостающие связи, удалить связи, а также установить обеспечение целостности данных по связям.

Технология работы

1. Закройте все созданные таблицы.

2. На вкладке Работа с базами данных в группе Показать и скрыть щелкните на кнопку Схема данных.

3. Щелкните на кнопку Все связи.

Открывшееся окно имеет рабочую область, в которую можно добавить необходимые таблицы и установить между ними связи. Каждая таблица представлена в окне небольшим окном. Заголовок окна соответствует названию таблицы, содержимое окна – названиям полей. Ключевое поле выделено.

Если при конструировании таблиц вы пользовались Мастером подстановок и все действия были выполнены правильно, то в окне увидите созданные таблицы и связи между ними (Рис. 14). Связи представлены "ниточками", соединяющими связанные поля таблиц.

Рис. 14. Схема базы данных после использования Мастера подстановок

 

Удобно (но необязательно), если связанные поля таблиц имеют одинаковые имена.

4. Если в окне Схема данных отсутствует одна или несколько таблиц, их можно добавить. Для этого щелкните правой кнопкой в области окна и выберите команду Добавить таблицу. В списке таблиц выберите недостающие таблицы и щелкните по кнопке Добавить. Выбранные таблицы появятся в окне и вы можете определить, установлены ли необходимые связи.

5. Если на схеме данных видно, что какая-то связь создана неправильно, то связь надо удалить (см. задание 10) и создать заново с помощью Мастера подстановок.

6. Чтобы установить обеспечение целостности данных, щелкните правой кнопкой на "ниточку" связи. Откроется окно Изменение связей (Рис. 15).

 

Рис. 15. Окно Изменениеп связей

7. Отметьте флажок Обеспечение целостности данных, а также флажок Каскадное обновление связанных полей.

8. Для некоторых связей установите флажок Каскадное удаление связанных полей.

Примечание.

Флажок Каскадное обновление связанных полей означает, что при изменении данных в главной таблице эти данные будут автоматически обновлены в связанных записях подчиненной таблицы.

Флажок Каскадное удаление связанных полей означает, что при удалении записи в главной таблице автоматически будут удалены все связанные записи из подчиненных таблиц.

 

9. Повторите действия для других "ниточек" связи.

10. Расставьте таблицы на схеме данных по уровням подчиненности. На верхнем уровне расположены таблицы, не подчиненные ни одной другой таблице, т.е. те, к которым примыкают "ниточки" связи только со стороны «1». На следующем уровне таблицы, подчиненные таблицам только верхнего уровня. И т.д. (Рис. 16).

 

Рис. 16. Схема данных после обеспечения целоствности данных

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...