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

Зачем вообще нужна схема данных
Без схемы Access не понимает, как таблицы соотносятся друг с другом, и не может автоматически подставлять значения через мастер подстановок или строить многотабличные запросы без ручного указания условий соединения. Схема данных — это визуальное представление связей между таблицами, аналог ER-диаграммы, только упрощённое и встроенное прямо в СУБД. Она же обеспечивает ссылочную целостность: не даёт удалить читателя, у которого числится невозвращённая книга, или добавить выдачу с несуществующим номером билета.
Как построить схему пошагово
Порядок действий обычно такой:
1. Открыть вкладку «Работа с базами данных» и выбрать «Схема данных».
2. В диалоговом окне добавить все таблицы, между которыми нужны связи.
3. Перетащить первичный ключ одной таблицы на соответствующее поле в другой — Access сам предложит тип связи.
4. Включить флажки «Обеспечение целостности данных» и, при необходимости, каскадное обновление и каскадное удаление связанных записей.
5. Сохранить схему и проверить её через тестовый ввод данных.
На практике удобнее сначала нормализовать структуру — развести данные так, чтобы не было дублирования, — и только потом рисовать схему, иначе связи придётся часто переделывать.
Главное правило проектирования: если поле повторяется в нескольких строках одной таблицы, его почти наверняка нужно вынести в отдельную таблицу и связать через внешний ключ.
Пример на структуре библиотечной базы
Проще разобрать логику схемы на конкретном примере. Возьмём базу из трёх таблиц: «Книги», «Читатели» и «Выдача книг».
| Таблица | Ключевые поля |
|---|---|
| Книги | автор, название, год издания, цена, признак нового издания, аннотация |
| Читатели | номер читательского билета, ФИО, адрес, телефон |
| Выдача книг | дата выдачи, дата сдачи книги |
Здесь «Книги» и «Читатели» — главные таблицы, а «Выдача книг» — подчинённая: в неё через внешние ключи подтягиваются номер книги и номер читательского билета, и обе связи имеют тип «один-ко-многим». Такая схема — уже готовое решение, и её структуру можно посмотреть на примере готовой база данных access Библиотека, стоимость которой — 599 руб.
Типичные ошибки
1. Забыли включить обеспечение целостности данных — Access допускает «осиротевшие» записи в подчинённой таблице, и отчёты начинают показывать пустые или некорректные значения.
2. Связывают поля разного типа данных (например, текстовое поле с числовым) — Access либо не даёт создать связь, либо связь формально есть, но данные не сопоставляются.
3. Не нормализуют таблицы перед построением схемы — в одной таблице хранят и данные о книге, и данные о читателе, из-за чего при обновлении информации приходится редактировать десятки строк вручную.
4. Ставят каскадное удаление там, где это не нужно — удаление одной книги стирает всю историю выдач, хотя она могла быть нужна для отчётности.
5. Строят запросы и формы до завершения схемы данных — потом при добавлении новых связей приходится пересобирать половину объектов базы заново.
