Связь "один к одному".
В связи "один к одному" каждая строка таблицы на стороне "один" связи должна иметь относящуюся к ней единственную строку в другой таблице на другой стороне связи.
Такая связь встречается редко и применяется лишь в особых ситуациях. Обычно вместо создания связи один к одному между двумя таблицами проще создать новую таблицу, в которую входят все поля этих таблиц. Основные ситуации, в которых имеет смысл использовать связь один к одному:
▪️количество полей в таблице превышает количество, допускаемое Microsoft Access;
▪️некоторые поля в таблице являются обязательными только для ограниченного подмножества строк таблицы.
Максимально допустимое количество полей в таблице Access составляет 255. На практике такое количество полей в одной таблице применяется исключительно редко. Если полей больше, чем несколько десятков, значит база данных сконструирована нерационально, в таком случае рекомендуется пересмотреть ее структуру. Если же такое количество полей действительно необходимо, то одна таблица, включающая большое количество полей, может быть организованна путем создания двух таблиц, разбиением полей по двум таблицам и определения между таблицами связи "один к одному".
Еще одна ситуация, в которой может потребоваться определить связь "один к одному", состоит в том, что в некоторой таблице часть полей заполняется лишь в относительно небольшом подмножестве строк. В качестве примера можно привести таблицы tblEmployees и tblVesting. Определенные поля требуют заполнения для тех сотрудников, которые получают выплаты из пенсионного фонда. Если выплаты из пенсионного фонда предоставляются лишь небольшой части сотрудников компании, то становится нецелесообразно с точки зрения повышения производительности или экономии дискового пространства помещать в таблицу tblEmployees все поля, содержащие информацию о получении выплат.
#Связи #ОдинКОдному
Post #154
5.36K