Лабораторная работа № 5

2. «СОЗДАНИЕ НОВОЙ БАЗЫ ДАННЫХ»

2.8. ЗАДАНИЕ 8. Редактирование и удаление связей между таблицами

В предыдущем ЗАДАНИИ 7 между всеми таблицами БД Факультет были установлены связи. Любая связь может быть отредактирована или удалена. Для это необходимо выполнить следующие действия:

  1. Если таблицы, между которыми необходимо изменить связь, открыты, заройте их.
  2. Открыть окно Схема данных.
  3. В окне Схема данных подвести курсор к линии связи, которую надо откорректировать, и двойным щелчком открыть диалоговое окно Изменение связей (рис. 19).
  4. Внесите необходимые изменения: установите целостность данных и каскадное обновление полей, проставив в соответствующих окнах флажки. После закрытия окна Изменение связей вы снова вернетесь в окно Схема данных.
  5. Обратите внимание, как изменился вид линий связи: теперь по схеме данных можно определить тип связи (рис. 23).
  6. После установления целостности связей всех таблиц откройте в режиме таблицы таблицу Учетная карта  и Ведомость. Введите в первую таблицу в поле ФИО фамилии Иванов И.И. и Петров П.П., другие поля заполнять необязательно (запись считается введенной, если курсор уже переведен в поле временной (новой) записи). Затем через буфер обмена перенесите эти фамилии в таблицу Ведомость.
  7. Установите расположение окон Слева направо, используя пункт горизонтального меню Окно. Перейдите в таблицу Учетная карта. Удалите запись Иванов И.И.. (используйте пункт Правка>Удалить запись горизонтального меню). Внимательно прочтите предупреждение, которое выдает Access на ваши действия (рис. 24 а). Подтвердите удаление. Обратите внимание, что произошло с этой же записью в таблице Ведомость.

 

Рис. 23. Схема связей между таблицами, в которых обеспечивается
целостность данных

 

8. Установите курсор в таблицу Ведомость. Удалите запись с фамилией Петров П.П. Обратите внимание на предупреждение, сделанное Access в этом случае (рис. 24 б). Самостоятельно удалите запись с фамилией  Петров П.П. из таблицы Учетная карта. Закройте обе таблицы.

а)

б)

Рис. 24. Предупреждение Access при каскадном удалении записи а) в главной таблице. б) в подчиненной таблице

9. Откройте таблицы Группы и Преподаватели. и расположите их Слева направо.

 10. Попробуйте удалить запись с фамилией Голованова Н.И. из таблицы Преподатели. Access не может позволить вам этого сделать, иначе нарушается целостность данных (скопируйте запись с фамилией Голованова Н.И. в буфер обмена).

11.Удалите фамилию Голованова Н.И. из поля Кураторы таблицы Группы. А затем еще раз повторите шаг 10. На этот раз удаление записи  должно пройти успешно.

12. Вставьте из буфера удаленную запись в таблицу Преподаватели и впишите эту же фамилию в поле Кураторы таблицы Группы. Закройте все таблицы.

Если понадобится удалить межтабличную связь, например, для того, чтобы изменить тип данных поля, участвующего в связи, необходимо выполнить следующие действия.

  1. Щелкнуть на требуемой линии объединения в окне Схема данных (линия при этом станет  более жирной) и нажмите клавишу <Delete>. Есть и другой способ: щелкнуть правой кнопкой мыши на нужной линии связи и выбрать из появившегося контекстного меню команду Удалить.
  2. На экране появится диалоговое окно Access, в котором необходимо будет подтвердить удаление связи.