Sto progettando il mio primo vero database e sto valutando i pro e i contro di come applicare l'uniformità nei miei dati. La mia prima opzione è creare un dominio personalizzato e programmare la mia interfaccia utente per consentire solo determinate opzioni. La mia seconda opzione è creare una "tabella di riferimento attributi" che memorizzerebbe i valori consentiti. La mia UI potrebbe interrogare quella tabella per i valori consentiti e visualizzarli in una casella a cascata. O potrei fare entrambi
Il mio pensiero sul primo è che sarebbe più difficile mantenere l'interfaccia utente. Se il dominio dovesse cambiare, allora avrei bisogno di modificare l'interfaccia utente (a meno che non ci sia un modo per interrogare il dominio per i valori?). Non so se ci sia, ma il mio pensiero è che elaborerebbe e restituirà i risultati più velocemente di dover interrogare un secondo tavolo.
Una tabella degli attributi sembra utile in quanto posso progettare l'interfaccia utente per adattarla al volo, ma in modo meno ottimale nel senso che i valori dei dati non sono controllati dal DBMS e richiede una query aggiuntiva.
Fare entrambe le cose aggiungerebbe tutta la complessità, aumenterebbe i tempi di elaborazione e aumenterebbe la manutenzione dell'interfaccia utente.