Tablas auxiliares
No se si a vosostros os pasará tambien, pero en mis aplicaciones el número de tablas auxiliares crece de forma exponencial respecto a las tablas principales.
Si tomamos una tabla principal, digamos artículos, tenemos 5 o 6 tablas auxiliares, veamos:
- Linea negocio
- Familia
- Subfamilia
- Marca
- Estado (alta, baja, bloqueado, etc...)
- Color (por ejemplo)
Al final decidí hacer un mantenimiento genérico y único para todas estas tablas auxiliares, y es más, las metí todas en una metatabla con la siguiente estructura (mas o menos):
ID -> identificador único del registro
TABLA -> Que tabla es (FML, SBF, MRC, LNG, ...)
NOMBRE -> Descripción
ID_SUP -> indentificador del superior (para estructuras jerárquicas)
Luego utilizando vistas obtengo cada tabla auxiliar allí donde lo necesito.
¿Como lo haceis vosotros?
Si tomamos una tabla principal, digamos artículos, tenemos 5 o 6 tablas auxiliares, veamos:
- Linea negocio
- Familia
- Subfamilia
- Marca
- Estado (alta, baja, bloqueado, etc...)
- Color (por ejemplo)
Al final decidí hacer un mantenimiento genérico y único para todas estas tablas auxiliares, y es más, las metí todas en una metatabla con la siguiente estructura (mas o menos):
ID -> identificador único del registro
TABLA -> Que tabla es (FML, SBF, MRC, LNG, ...)
NOMBRE -> Descripción
ID_SUP -> indentificador del superior (para estructuras jerárquicas)
Luego utilizando vistas obtengo cada tabla auxiliar allí donde lo necesito.
¿Como lo haceis vosotros?
2 comentarios
Jose Alberto -
De hecho, en varias de las aplicaciones, la estructura de dicha tabla ha acabado teniendo campos que sólo me sirven para una de las "variantes", pero aún así pienso que compensa.
Ademas si se trabaja con OOP y "mapeando" los objetos con tablas, hacer "metatablas" permite guardar herencias y relaciones de forma más flexible. Este es otro buen tema para tratar, el "mapeado" de objetos en tablas de BD.
José Luis Sánchez -