Digamos que estoy diseñando una base de datos para un escenario donde existe una relación de uno a cero o uno (1-0..1). Por ejemplo:
- Hay un conjunto de usuarios , y algunos usuarios también pueden ser clientes .
 
Por lo tanto, creé las dos tablas correspondientes usersy customers, pero ...
... ¿Cuál es la mejor manera de representar e implementar esta situación en una plataforma SQL dada? He considerado dos posibles soluciones:
En la
userstabla, agregue lacustomercolumna que puede ser una referencia de CLAVE EXTRANJERAcustomerso unaNULLmarca.En la
customerstabla, incluya unausercolumna (establecida con unaUNIQUErestricción) que apunte a lauserstabla.
Ya he hecho una pregunta similar en algunos foros, pero la respuesta fue básicamente "lo que necesites", "lo que creas conveniente". No me gusta este tipo de respuesta. En cambio, quiero una pieza seria de teoría DB, una respuesta bien fundada. ¿Dónde puedo leer sobre las relaciones 1-0..1?
fuente
