Sto progettando lo schema del database per una nuova funzionalità del prodotto. Nel mio attuale design ho alcuni dati opzionali correlati. Piuttosto che avere campi nullable ho una tabella separata con una relazione 0..1: 1 alla tabella principale. Ho scelto questo design perché le query sono più semplici * se i dati nulli non devono essere presi in considerazione.
Il responsabile del team mi ha fatto notare che complicherà l'associazione dei dati nell'interfaccia utente e suggerisco di utilizzare solo campi nullable. Mi chiedo quali complicazioni introdurrà l'approccio alla tabella opzionale?
La cosa ovvia che mi viene in mente è che i controlli sensibili ai dati non possono legarsi a un data set chiuso, quindi dovrò creare un record al volo quando l'utente tenta di compilare i dati opzionali o creare il registrare allo stesso tempo del record principale, annullando lo scopo di avere una tabella separata. C'è qualcos'altro di cui dovrei essere a conoscenza?
Chiarimento
* Più semplice, con cui mi riferisco alla quantità da capogiro delle regole e alle ambiguità relative il comportamento di null in diversi scenari di query nello standard SQL e il fatto che non ci sono due venditori che concordano su quale di queste regole per implementare .