Principales respuestas
Duda en Realizar Enumerable o Tabla

Pregunta
-
Buen Dia
Tengo la siguiente pregunta... existe una tabla en la base de datos que estoy trabajando que me indica los canales de venta:
Tabla CanalesVenta1 DISTRIBUIDOR
2 MAYORISTA
3 CI
4 NORMAL
5 FABRICANTE
lo que me referencia esos datos a datos de Factura, mi pregunta es si es necesario tener estos datos como tabla o tenerlo como un enumerado?? esta tabla no va crecer en el futuro así que me gustaría una opinión de ustedes.
Respuestas
-
hola
>>mi pregunta es si es necesario tener estos datos como tabla o tenerlo como un enumerado?
depende
si le preguntas a un DBA seguro te direa que lo tengas en tabla, mas que nada para poder asegurar la relacion de integridad y ademas si hay que crear queries de listado o reportes se puede obtener la descripcion
Ahora si le preguntas a un progrador te direa que es innecesario ya que con el valor si la lista es fija puede obtener la descripcion del enum
por lo general en las aplicaciones que desarolle se optan por ambas, se crea la tabla y demas se tiene el enum
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta greg_dorian martes, 6 de marzo de 2018 13:58
Todas las respuestas
-
La ventaja de tenerlo como tabla es que puedes hacer un JOIN, cosa que te facilita la escritura de sentencias de seleccion que muestren el nombre del campo, asi como la realizacion de informes, exportacion, etc. Si lo dejas como un enum, te fuerzas a realizar todas esas operaciones en el lado cliente aplicando C# sobre los resultados de la consulta. Aparte de complicarte la programacion, no tiene por que ser mas rapido que hacer el JOIN en el servidor, dado que los servidores de base de datos estan precisamente altamente optimizados para realizar este tipo de JOINs.
Editado: Ademas, teniendolo como tabla, es sencillo aplicar una regla de integridad referencial, para evitar que se graben valores incorrestos en el campo relacionado. De no tener la tabla, tendrias que aplicar una restriccion de tipo CHECK, mas molesta de escribir y de mantener sincronizada con el enum.
- Editado Alberto PoblacionMVP, Moderator martes, 6 de marzo de 2018 13:48
-
hola
>>mi pregunta es si es necesario tener estos datos como tabla o tenerlo como un enumerado?
depende
si le preguntas a un DBA seguro te direa que lo tengas en tabla, mas que nada para poder asegurar la relacion de integridad y ademas si hay que crear queries de listado o reportes se puede obtener la descripcion
Ahora si le preguntas a un progrador te direa que es innecesario ya que con el valor si la lista es fija puede obtener la descripcion del enum
por lo general en las aplicaciones que desarolle se optan por ambas, se crea la tabla y demas se tiene el enum
saludos
Leandro Tuttini
Blog
MVP Profile
Buenos Aires
Argentina- Marcado como respuesta greg_dorian martes, 6 de marzo de 2018 13:58