Ver Mensaje Individual
  #9 (permalink)  
Antiguo 14/10/2009, 05:57
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: como establecer parametros de consulta variables

USUARIO_HORARIO es un poco redundante, porque como el horario le pertenece a la Comisión, la relación de usuario con el horario está dada en forma indirecta.
En este caso, si quieres acceder a una información consolidada de este tipo, yo pensaría en una vista (VIEW), que me devolviese esa información en forma de una tabla. En definitiva, ese es uno de los usos de las VIEWs. Lo mismo haría con la otra (USUARIO_ACTIVIDAD), ya que en definitiva es información cuyos datos primarios están ya almacenados en otra parte, y se consultan de ese modo según lo que se requiera.
Como verás, hay ciertas cosas que no se resuelven creando tablas...

Fuera de eso, una vez definidas las tablas y los datos que se almacenan, para evitar el problema que causa tu duda, lo que se hace es diseñar el conjunto de consultas que esa base va a responder en forma general (las consultas más detalladas van apareciendo conforme se diseña el modelo de la aplicación). Cuando se tienen las consultas básicas puedes trabajar optimizándolas, entre otras cosas, creando índices que te evitarán los cuellos de botella cuando debas procesar muchos registros.
De todos modos te cuento que para que MySQL se empiece a sentir "pesado" respondiendo consultas bien diseñadas, es que estarás procesando mo unos miles de registros, sino algunos millones.
En cualquier caso, cuando llegues a esa etapa hay algmunos consejos básicos que podemos ver.
Cita:
La cuestión es: debo entender que la eficiencia de una base de datos depende mucho más de un correcto modelo de relación entre los datos que no de un tamaño reducido, y que dando esto por sentado el modelo de entidad relación es la mejor forma de hacerlo, no es así?
Exactamente.
Mientras mejor diseñado esté el modelo de datos no solamente tendrás mayor flexibilidad con las aplicaciones que lo puedan usar, sino mayor será la eficiencia que tenga.
El modelo E-R no es el único modelo que existe en bases de datos, pero se ha mostrado como el más eficiente y eficaz de ellos, por lo cual ha sido implementado por todas las empresas que diseñan sistemas de gestión de bases de datos (DBMS), tales como IBM, Oracle, Microsoft y un larguísimo etcétera.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)