Powiedzmy, że projektuję bazę danych dla scenariusza, w którym istnieje relacja jeden do zera lub jeden (1-0..1). Na przykład:
- Istnieje zestaw Użytkowników , a niektórzy Użytkownicy mogą być również Klientami .
W ten sposób utworzyłem dwie odpowiednie tabele usersi customers, ale…
… Jaki jest najlepszy sposób na przedstawienie i wdrożenie tej sytuacji na danej platformie SQL? Rozważyłem dwa możliwe rozwiązania:
W
userstabeli dodajcustomerkolumnę, która może być odniesieniem do klucza OBCEGOcustomerslubNULLznakiem.W
customerstabeli dołączuserkolumnę (ustawioną zUNIQUEograniczeniem), która wskazuje nauserstabelę.
Zadałem już podobne pytanie na niektórych forach, ale odpowiedź brzmiała „cokolwiek potrzebujesz”, „cokolwiek uznasz za wygodne”. Nie podoba mi się tego rodzaju odpowiedź. Chcę zamiast tego poważnego fragmentu teorii DB, dobrze uzasadnionej odpowiedzi. Gdzie mogę przeczytać o relacjach 1-0..1?