1
resposta

Quando usar o Enum?

Boa tarde,

Minha dúvida é, quando devo usar o enum e quando devo criar uma tabela a parte. Por exemplo, criar uma tabela separada com os as formas de pagamento existentes, onde eu atribuo a chave primaria do pagamento em questão como foreign key na tabela de compra.

1 resposta

Alisson, boa noite!

Eu recomendo usar o ENUM apenas quando você sabe que aquele campo não será alterado em nenhum momento, é melhor criar uma tabela pois essa, é menos passível a erros e é de fácil alteração,

  • Ler os itens do ENUM é um processo mais complicado do que deveria e é lento. Ele não é um dado comum

  • Alterar o ENUM em si exige mexer nas tabelas que o usam, entre outros problemas. É bem verdade que um ENUM só deveria ser usado se você sabe que ele nunca deveria ser alterado.

  • Não pode adicionar dados adicionais além da descrição.

  • Não pode ser internacionalizado.

  • É um elemento pertencente à tabela onde é usado, ou seja, não é um membro público da base e não pode ser reutilizado, o que praticamente mata a vantagem de canonicalização da informação.

  • Não é tão simples usá-lo corretamente

Bons estudos!