Per me, la saggezza classica è di memorizzare i valori enum (OrderStatus, UserTypes, ecc.) Come tabelle di ricerca nel db. Ciò mi consente di rafforzare l'integrità dei dati nel database, evitando valori falsi o nulli, ecc.Enum nel DB o NO Enums nel DB
Tuttavia, sempre di più, mi sembra una duplicazione inutile. Non solo devo creare tabelle per questi valori (o avere una pesante tabella di ricerca centrale), ma se voglio aggiungere un valore, devo ricordarmi di aggiungerlo a 2 (o più, contando produzione, testing, live db's) e le cose possono essere facilmente sfasate.
Ancora non riesco a liberare le tabelle di ricerca.
So che ci sono probabilmente alcuni scenari in cui uno ha un vantaggio rispetto all'altro, ma quali sono i tuoi pensieri generali?
Come si fa ad assicurarsi che nessuna riga abbia un valore non valido per l'enumerazione? Basta usare il codice che accede al DB? –