Видео: создание связей типа "один-к-одному"

Применяется к
Access для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Проверьте, как это работает!

Что такое связь «один к одному»?

Связи «один к одному» часто используются для получения важных данных, необходимых для ведения бизнеса.

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

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

Общие сведения о создании связи «один к одному»

Связи "один-к-одному" создаются путем связывания индекса первой таблицы, в качестве которого обычно выступает первичны ключ, с индексом второй таблицы, причем их значения совпадают. Пример:

Фрагмент экрана: две таблицы с общим идентификатором Часто лучший способ создать такую связь — сделать так, чтобы вторичная таблица подыскивала значение из первой таблицы. Например, вы можете сделать поле "Код автомобиля" в таблице "Сотрудники" полем подстановки, которое будет искать значение индекса "Код автомобиля" в таблице "Служебный транспорт". Таким образом исключается случайное добавление кода автомобиля, который на самом деле не существует.

Важно

При создании связи "один-к-одному" следует тщательно обдумать, требуется ли включать для нее обеспечение целостности данных.

Целостность данных помогает Access сохранить данные в чистоте путем удаления связанных записей. Например, при удалении сотрудника из таблицы "Сотрудники" также удаляются записи о льготах для этого сотрудника из таблицы "Льготы". Но в некоторых отношениях, таких как в этом примере, целостность данных не имеет смысла: если мы удаляем сотрудника, мы не хотим, чтобы автомобиль удалялся из таблицы служебных автомобилей, так как автомобиль по-прежнему будет принадлежать компании и будет назначен кому-то другому.

Инструкции по созданию связи типа «один к одному»

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

  1. Откройте таблицу.

  2. В режиме конструктора добавьте новое поле, выберите значение Тип данных, а затем запустите мастер подстановок.

  3. В мастере по умолчанию выбран поиск значений в другой таблице, поэтому нажмите кнопку Далее.

  4. Выберите таблицу с ключом (обычно первичным), который вы хотите добавить в первую таблицу, и нажмите кнопку Далее. В рассмотренном примере следует выбрать таблицу "Служебный транспорт".

  5. Добавьте в список Выбранные поля поле с необходимым ключом. Нажмите кнопку Далее.

    Снимок экрана: мастер подстановок

  6. Задайте порядок сортировки и, при необходимости, измените ширину поля.

  7. В последнем окне установите флажок Включить проверку целостности данных и нажмите кнопку Готово.

Вам нужны дополнительные возможности?

Начало работы со связями между таблицами

Создание, изменение и удаление отношения