БД. Relations. One-to-one.
id
secondtable
masterid reference mastertable(id) unique
будет отношение
mastertable 1 <-> 0..1 secondtable
обычно этого достаточно
разносить нужно, а контроллировать зачем? повесь просто праймари ключи на id и уникальный индексы сделай
Часто встречается в отношениях наследования. При этом альтернативный вариант - скинуть все поля одной таблицы в другую как NULLABLE.
Я все понял.
Оставить комментарий
aleks058
Сел тут базу проектировать.МС Скул 2000.
Понял, что две таблицы надо связать отношением "один к одному".
Надо сказать, что это практически первый опыт разработки БД.
Вот. Тыкался, тыкался - не выходит ничего. Один ко многим и все тут.
Полез в инет. Нашел какую-то статейку, что типа такой вид связи надо убирать, объединив две таблицы в одну.
Теперь думаю и пока не понимаю.
Есть у меня, например, клиенты (таблица для них). У них есть ID, Name, Type и <куча разной инфы - телефоны, адреса>. Заблаговременно известно, что <куча разной инфы> будет использоваться очень редко и только в самых тривиальных запросах. В основном запросы будут содержать ID, Name и Type.
В целях повышения производительности стоит разносить эту инфу в две таблицы?
И если да, то как заставить базу контролировать выполнение условия "один к одному"?
Предполагаем, что количество клиентов очень велико и скорость выходит на первый план.