Diciamo che sto progettando un database per uno scenario in cui esiste una relazione da uno a zero o uno (1-0..1). Per esempio:
- Esiste un insieme di utenti e alcuni utenti possono anche essere clienti .
Quindi, ho creato le due tabelle corrispondenti userse customers, ma ...
... Qual è il modo migliore per rappresentare e implementare questa situazione in una determinata piattaforma SQL? Ho considerato due possibili soluzioni:
Nella
userstabella, aggiungi lacustomercolonna che può essere un riferimento a CHIAVE ESTERAcustomerso unNULLsegno.Nella
customerstabella, includere unausercolonna (impostata con unUNIQUEvincolo) che punta allauserstabella.
Ho già posto una domanda simile in alcuni forum, ma la risposta è stata sostanzialmente "qualunque cosa tu abbia bisogno", "qualunque cosa tu ritenga conveniente". Non mi piace questo tipo di risposta. Voglio invece un serio pezzo di teoria del DB, una risposta fondata. Dove posso leggere le relazioni 1-0..1?