Скажімо, я розробляю базу даних для сценарію, коли існує взаємозв'язок один до нуля або один (1-0..1). Наприклад:
- Є набір Користувачів , і деякі Користувачі також можуть бути Клієнтами .
Таким чином, я створив дві відповідні таблиці, usersі customers, але ...
… Який найкращий спосіб представити та реалізувати цю ситуацію на даній платформі SQL? Я розглянув два можливі рішення:
У
usersтаблицю додайтеcustomerстовпчик, який може бути або посиланням на ІНТЕРНЕТ-КЛЮЧ,customersабоNULLпозначкою.У
customersтаблиці включітьuserстовпчик (встановлений ізUNIQUEобмеженням), який вказує наusersтаблицю.
Я вже задавав подібне питання на деяких форумах, але в основному відповідь був "все, що вам потрібно", "все, що ви вважаєте зручним". Мені не подобається така відповідь. Натомість я хочу серйозний фрагмент теорії БД, обґрунтовану відповідь. Де я можу прочитати про стосунки 1-0..1?