En el artículo anterior llamado Uso del modelo Atributos / Tipos (EAV) en el diseño de Base de Datos explicamos cómo utilizarlo, posiblemente se necesite un ejemplo mas didáctico que nos ilustre para comprender mejor su implementación.

El siguiente modelo físico es un ejemplo sencillo de una pequeña base de datos para varios cines de la misma empresa, puede que parezca un poco abstracto, pero vale la pena sentarse a entender ¿Por qué está normalizado de esta forma?, puede que nos llevemos algunas sorpresas y discusiones sobre la idea de cada forma de pensar.

Contempla los siguientes casos:

Compra de las entradas a una determinada función (tbl_tarifas_funciones). Un cliente puede comprar varias entradas a una misma función (tbl_facturas, tbl_tickets).

  1. Reservación de puestos de una determinada función (tbl_tickets).
  2. Manejo de varias tarifas de una misma función (tbl_tarifas, tbl_tarifas_funciones).
  3. Manejo de varios cines y salas dentro la misma base de datos (tbl_estructuras, tbl_asientos).
  4. Registro de usuarios (tbl_usuarios).
  5. Implementación de EAV (tbl_tipos, tbl_atributos).

El modelo físico anterior fue realizado con la herramienta SQL Power Architect Community Edition.