Проверьте, как это работает!
Что такое связь «один к одному»?
Связи «один к одному» часто используются для получения важных данных, необходимых для ведения бизнеса.
Связь "один-к-одному" — это связь между информацией из двух таблиц, когда каждая запись используется в каждой таблице только один раз. Например, связь типа "один-к-одному" может использоваться между сотрудниками и их служебными автомобилями. Каждый работник указан в таблице "Сотрудники" только один раз, как и каждый автомобиль в таблице "Служебный транспорт".
Вы можете использовать связи "один к одному", если у вас есть таблица со списком элементов, но конкретная информация, которую вы хотите записать о них, зависит от типа. Например, у вас может быть таблица контактов, в которой некоторые люди являются сотрудниками, а другие — субподрядчиками. Для сотрудников необходимо знать их номер, расширение и другую ключевую информацию. Для субподрядчиков вы хотите знать название компании, номер телефона и ставку счетов, среди прочего. В этом случае необходимо создать три отдельные таблицы : Контакты, Сотрудники и Субподрядчики, а затем создать связь "один к одному" между таблицами "Контакты" и "Сотрудники" и "один к одному" между таблицами "Контакты" и "Субподрядчики".
Общие сведения о создании связи «один к одному»
Связи "один-к-одному" создаются путем связывания индекса первой таблицы, в качестве которого обычно выступает первичны ключ, с индексом второй таблицы, причем их значения совпадают. Пример:
Часто лучше всего создать эту связь, чтобы вторичная таблица искала значение из первой таблицы. Например, вы можете сделать поле "Код автомобиля" в таблице "Сотрудники" полем подстановки, которое будет искать значение индекса "Код автомобиля" в таблице "Служебный транспорт". Таким образом исключается случайное добавление кода автомобиля, который на самом деле не существует.
Важно
При создании связи "один-к-одному" следует тщательно обдумать, требуется ли включать для нее обеспечение целостности данных.
Целостность ссылок помогает Access поддерживать чистоту данных путем удаления связанных записей. Например, при удалении сотрудника из таблицы Сотрудники также удаляются записи о льготах для этого сотрудника из таблицы "Преимущества". Но в некоторых отношениях, как в этом примере, ссылочная целостность не имеет смысла: если мы удалим сотрудника, мы не хотим, чтобы автомобиль был удален из таблицы Company Cars, потому что автомобиль по-прежнему будет принадлежать компании и будет назначен кому-то другому.
Инструкции по созданию связи типа «один к одному»
Вы можете создать связь "один-к-одному", добавив в таблицу поле подстановки. (Сведения о том, как это сделать, см. в статье Создание таблиц и настройка типов данных.) Например, чтобы указать, какой автомобиль был назначен конкретному сотруднику, можно добавить идентификатор автомобиля в таблицу Сотрудники. После этого воспользуйтесь мастером подстановок для создания связи между полями.
Откройте таблицу.
В режиме конструктора добавьте новое поле, выберите значение Тип данных, а затем запустите мастер подстановок.
В мастере по умолчанию выбран поиск значений в другой таблице, поэтому нажмите кнопку Далее.
Выберите таблицу с ключом (обычно первичным), который вы хотите добавить в первую таблицу, и нажмите кнопку Далее. В рассмотренном примере следует выбрать таблицу "Служебный транспорт".
Добавьте в список Выбранные поля поле с необходимым ключом. Нажмите кнопку Далее.
Задайте порядок сортировки и, при необходимости, измените ширину поля.
В последнем окне установите флажок Включить проверку целостности данных и нажмите кнопку Готово.