Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК-БД-(конспекты лекций).doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
2.4 Mб
Скачать

Лекция 12 (Базы данных)

Темы: схема данных в Access, модификация структуры базы данных.

1. Схема данных в Access

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

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

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

Кроме указанных типов связей в Access существуют связи-объединения, обеспечивающие объединение записей таблиц не по ключевому полю, а в следующих случаях:

  • связываемые записи в обеих таблицах совпадают (связи устанавливаются по умолчанию);

  • для всех записей первой таблицы, для которых отсутствуют связи со второй, устанавливают связи с пустой записью второй таблицы;

  • для всех записей второй таблицы, для которых отсутствуют связи с первой, устанавливают связи с пустой записью первой таблицы.

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

При создании схемы данных пользователь включает в нее таблицы и устанавливает связи между таблицами. Причем для связей типа «один к одному» и «один ко многим» можно задать параметр обеспечение целостности данных, а также автоматическое каскадное обновление и удаление связанных записей. Обеспечение целостности данных означает выполнение для взаимосвязанных таблиц следующих условий корректировки базы данных:

  • в подчиненную таблицу не может быть добавлена запись, для которой не существует в главной таблице ключа связи;

  • в главной таблице нельзя удалить запись, если не удалены связанные с ней записи в подчиненной таблице,

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

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

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

  • связываемые поля имеют одинаковый тип данных, причем имена полей могут быть различными;

  • обе таблицы сохраняются в одной базе данных Access;

  • главная таблица связывается с подчиненной по первичному простому или составному ключу (уникальному индексу) глав ной таблицы.

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

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

Первоначальное создание схемы данных

Создание схемы данных начинается в окне базы данных с выполнения команды Сервис|Схема данных или нажатия кнопки Схема данных на панели инструментов.

В

Рис 2. Схема данных базы данных

ключение таблиц в схему данных

После нажатия кнопки Схема данных открывается окно Добавление таблицы, в котором можно выбрать таблицы и запросы, которые нужно включить в схему данных (рис 2) Для размещения таблицы в окне Схема данных надо выделить ее в окне Добавление таблицы и нажать кнопку Добавить. Для выделения нескольких таблиц надо, держа нажатой клавишу <Ctrl>, щелкнуть на всех таблицах, переносимых в схему. После включения всех нужных таблиц в схему данных надо нажать кнопку Закрыть В результате в окне Схема данных будут представлены все включенные таблицы со списком своих полей. Для установления связи между парой таблиц в схеме данных надо выделить в главной таблице уникальное ключевое поле, по которому устанавливается связь. Далее при нажатой кнопке мыши протащить курсор в соответствующее поле подчиненной таблицы. При установлении связи по соответствующему ключу необходимо выделить все поля, входящие в ключ главной таблицы, и перетащить их на одно из полей связи в подчиненной таблице. Для выделения всех полей, входящих в составной уникальный ключ, необходимо отмечать поля при нажатой клавише <Ctrl>. При установлении связи откроется окно Связи. При этом в строке Тип отношения автоматически устанавливается тип «один ко многим».

При составном ключе связи в окне Связи необходимо для каждого ключевого поля главной таблицы — Таблица|3апрос — выбрать соответствующее поле подчиненной таблицы, названной Связанная таблица|3апрос.

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

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