Как создать связь один к одному access
В Access можно задать три вида связей между таблицами: Один-ко-многим, Многие-ко-многим и Один-к-одному.
Связь Один-ко-многим — наиболее часто используемый тип связи между таблицами. В такой связи каждой записи в таблице А может соответствовать несколько записей в таблице В (поля с этими записями называют внешними ключами), а запись в таблице В не может иметь более одной соответствующей ей записи в таблице А.
При связи Многие-ко-многим одной записи в таблице А может соответствовать несколько записей в таблице В, а одной записи в таблице В — несколько записей в таблице А. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит по крайней мере из двух полей, одно из которых является общим с таблицей А, а другое — общим с таблицей В.
При связи Один-к-одному запись в таблице А может иметь не более одной связанной записи в таблице В и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением Один-к-одному применяют для разделения очень широких таблиц, для отделения части таблицы в целях ее защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.
Тип создаваемой связи зависит от полей, для которых определяется связь:
· связь Один-ко-многим создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс, т.е. значения в нем не повторяются;
· связь Один-к-одному создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы;
· связь Многие-ко-многим фактически представляет две связи типа один-ко-многим через третью таблицу, ключ которой состоит, по крайней мере, из двух полей, общих для двух других таблиц.
Создание связей между таблицами
· щелкните по кнопке на панели инструментов или выполните команду Сервис, Схема данных. На экране появится окно «Схема данных»;
· щелкните по кнопке на панели инструментов или выполните команду Связи, Добавить таблицу;
· в появившемся окне будет выделено название одной таблицы. Щелкните по кнопке <Добавить>;
· переведите выделение на имя следующей таблицы и щелкните по кнопке <Добавить>. Аналогично добавьте оставшиеся таблицы;
· закройте окно, щелкнув по кнопке <3акрыть>;
· создайте связь между таблицами. Для этого подведите курсор мыши к полю первой таблицы, щелкните левой кнопкой мыши и, не отпуская ее, перетащите курсор на поле в другую таблицу, а затем отпустите кнопку мыши. На экране откроется окно «Связи»;
· установите флажок в свойстве Обеспечение целостности данных, щелкнув по нему;
· установите флажок в свойстве Каскадное обновление связанных полей и Каскадное удаление связанных записей;
· щелкните по кнопке <Создать>. Связь будет создана;
· аналогично создайте связи между другими таблицами
· закройте окно схемы данных, ответив ДА на вопрос о сохранении макета.
Как создать связь один к одному access

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

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

Нажмите на параметр Отношения .

Выберите tblEmployees и tblHRData, а затем нажмите кнопку «Добавить», чтобы добавить их в наше представление, а затем закройте диалоговое окно « Показать таблицу ».

Чтобы создать связь между этими двумя таблицами, используйте мышь, щелкните и удерживайте поле EmployeeID из tblEmployees и перетащите это поле в поле, которое мы хотим связать, наведя указатель мыши на EmployeeID из tblHRData . Когда вы отпустите кнопку мыши, Access откроет следующее окно –

Приведенное выше окно связывает EmployeeID из tblEmployees с EmployeeID из tblHRData. Теперь давайте нажмем кнопку « Создать» , и теперь эти две таблицы связаны.

Теперь отношения сохраняются автоматически, и нет необходимости нажимать кнопку «Сохранить». Теперь, когда у нас созданы самые основные отношения, давайте теперь перейдем к таблице, чтобы посмотреть, что произошло с этими отношениями.
Давайте откроем таблицу tblEmployees .

Здесь, в левой части каждой записи, вы увидите небольшой знак плюс по умолчанию. Когда вы создаете связь, Access автоматически добавит вспомогательную таблицу в эту таблицу.

Давайте нажмем на знак плюс, и вы увидите информацию, относящуюся к этой записи, в таблице tblHRData .

Нажмите на значок Сохранить и откройте tblHRData, и вы увидите, что введенные нами данные уже здесь.