Как сделать схему данных в Access

Схема данных в Access строится через вкладку «Конструктор» → «Схема данных»: туда добавляют нужные таблицы, а затем связывают одноимённые или логически связанные поля перетаскиванием мыши от первичного ключа одной таблицы к внешнему ключу другой. После перетаскивания открывается окно «Изменение связей», где отмечают обеспечение целостности данных и тип связи — чаще всего «один-ко-многим». На этом базовая работа со схемой завершена, дальше остаётся только проверить корректность связей на реальных данных.

Зачем вообще нужна схема данных

Без схемы Access не понимает, как таблицы соотносятся друг с другом, и не может автоматически подставлять значения через мастер подстановок или строить многотабличные запросы без ручного указания условий соединения. Схема данных — это визуальное представление связей между таблицами, аналог ER-диаграммы, только упрощённое и встроенное прямо в СУБД. Она же обеспечивает ссылочную целостность: не даёт удалить читателя, у которого числится невозвращённая книга, или добавить выдачу с несуществующим номером билета.

Как построить схему пошагово

Порядок действий обычно такой:

1. Открыть вкладку «Работа с базами данных» и выбрать «Схема данных».
2. В диалоговом окне добавить все таблицы, между которыми нужны связи.
3. Перетащить первичный ключ одной таблицы на соответствующее поле в другой — Access сам предложит тип связи.
4. Включить флажки «Обеспечение целостности данных» и, при необходимости, каскадное обновление и каскадное удаление связанных записей.
5. Сохранить схему и проверить её через тестовый ввод данных.

На практике удобнее сначала нормализовать структуру — развести данные так, чтобы не было дублирования, — и только потом рисовать схему, иначе связи придётся часто переделывать.

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

Пример на структуре библиотечной базы

Проще разобрать логику схемы на конкретном примере. Возьмём базу из трёх таблиц: «Книги», «Читатели» и «Выдача книг».

Таблица Ключевые поля
Книги автор, название, год издания, цена, признак нового издания, аннотация
Читатели номер читательского билета, ФИО, адрес, телефон
Выдача книг дата выдачи, дата сдачи книги

Здесь «Книги» и «Читатели» — главные таблицы, а «Выдача книг» — подчинённая: в неё через внешние ключи подтягиваются номер книги и номер читательского билета, и обе связи имеют тип «один-ко-многим». Такая схема — уже готовое решение, и её структуру можно посмотреть на примере готовой база данных access Библиотека, стоимость которой — 599 руб.

Типичные ошибки

1. Забыли включить обеспечение целостности данных — Access допускает «осиротевшие» записи в подчинённой таблице, и отчёты начинают показывать пустые или некорректные значения.

2. Связывают поля разного типа данных (например, текстовое поле с числовым) — Access либо не даёт создать связь, либо связь формально есть, но данные не сопоставляются.

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

4. Ставят каскадное удаление там, где это не нужно — удаление одной книги стирает всю историю выдач, хотя она могла быть нужна для отчётности.

5. Строят запросы и формы до завершения схемы данных — потом при добавлении новых связей приходится пересобирать половину объектов базы заново.

Понравилась статья? Поделиться с друзьями: