O falecido Oracle Designer já utilizava esta técnica na década de 1990. Ele criava uma tabela chamada CG_REF_CODES, que armazenava os valores possíveis para todos os domínios da aplicação.
A implementação desta solução é mais simples do que criar uma tabela para cada domínio (status no teu exemplo), mas o uso requer que sempre se acrescente o identificador do domínio no join. Outra questão é o engessamento dos tipos de dado das colunas, na prática normalmente alguns domínios tem necessidades diferentes. Étore From: oracle_br@yahoogrupos.com.br [mailto:oracle_br@yahoogrupos.com.br] Sent: quarta-feira, 25 de outubro de 2017 13:43 To: oracle_br@yahoogrupos.com.br Subject: [oracle_br] Duvida de boas práticas Amigos, Td bem? Queria saber a opnião de vocês. O pessoal de desenvolvimento pretendem criar uma tabela chamada STATUS para todo sistema. Nessa tabela contem as colunas: ID, Entidade (Nome da tabela), Propriedade (Nome da coluna), valor (Valor do Status) e Descrição Exemplo populado: Entidade Propriedade Valor Descrição WorkOrder Status 0 Fechado WorkOrder Status 1 Em andamento WorkOrder Status 2 Parado por problema WorkOrder Status 3 Parado por manutenção WorkOrder Status 4 Concluído Product Status 0 Inativo Product Status 1 Ativo Employee Status 0 Ativo Employee Status 1 Férias Employee Status 2 Demitido RouteWip Status 0 Livre RouteWip Status 1 Restrição RouteWip Status 2 Bloqueado Ou seja, é um tabela unica com todos os status de todas as tabelas do banco. Isso é uma boa prática? Alguém no grupo utiliza essa forma de armazenamento? Obrigado Clayton Xavier