Sunteți pe pagina 1din 4

Bases de Datos

Enunciado de la Prctica

La cadena de centros de fitness Salud quiere crear una base de datos para su gestin.
La informacin que contiene se describe a continuacin.
El grupo tiene socios que pueden utilizar los servicios o instalaciones de cualquiera de
los centros. Los socios se identifican por su nmero de socio, nombre y direccin.
Del total de servicios que tiene la cadena, cada centro puede disponer de algunos de
ellos, pero no necesariamente de todos.
Uno de los servicios son las clases colectivas de fitness. Este servicio es gratuito. Es
decir, est incluido en la cuota mensual de socio. Cada centro tiene un horario semanal de
clases. La duracin de las clases es de una hora, desde las 10 de la maana hasta las 10
de la noche. En el horario que se publica en cada centro se identifica la disciplina y el
profesor que imparte la clase. No todas las disciplinas se imparten en todos los centros y un
profesor puede dar clase en ms de un centro y de ms de una disciplina, aunque slo de
aquellas en las que estn registrados como especialistas (estas constan en la ficha del
profesor, adems de su nombre y su cdigo).
Los socios tambin pueden apuntarse a clases de entrenamiento personal con los mismos
profesores, en horas que stos tengan libres y durante tres horas a la semana. Cada
disciplina tiene una tarifa mensual correspondiente.
Semanalmente se publica tambin un cuadro de sustituciones (profesores que sustituyen a
otros en las clases colectivas) y que son vigentes para la semana en curso.
El grupo organiza tambin torneos de distintos deportes a los que se pueden apuntar los
socios. Estos torneos se celebran durante 1 semana en un horario determ inado (se publica
al convocar el torneo). El torneo se celebr a nicamente en las instalaciones de un
centro (cada vez en uno). Los torneos tienen un nmero lmite de participantes y cuando se
completa ese lmite, no se admiten ms inscripciones. Puede haber ms de un torneo
celebrndose simultneamente, pero no en el mismo centro. Cada torneo tiene una cuota de
inscripcin.
La diferencia entre las disciplinas (como por ejemplo aerobic, musculacin, ...) y los deportes
(padel, tenis, ...), es que las primeras se realizan todas en salas comunes y no hay que
reservar hora, excepto para las clases colectivas que hay que apuntarse y en los deportes hay
que reservar la pista correspondiente a una hora y adems se pueden organizar torneos.
Algunos centros tienen tambin una tienda con diferentes productos (que no tienen que
estar disponibles en todas las tiendas). Por cada producto tenemos su cdigo, descripcin,
centros en los que se vende, unidades disponibles y precio. Mensualmente las tiendas
establecen una promocin, en la cual seleccionan un producto que se vende a mitad de
precio (cada tienda de cada centro puede elegir un producto diferente en un mes determinado).

Cuestiones:
Solucionar las siguientes cuestiones mediante sentencias SQL, creando los ficheros
script correspondientes para cada apartado. Para las consultas se deber indicar el
resultado obtenido.

1. Introducir los datos necesarios para que produzcan resultados visibles en todos los
dems apartados.
2. Obtener el cdigo, nombre y apellidos de aquellos socios que estn apuntados a ms
de una clase colectiva.
3. Obtener el cdigo, nombre y apellidos de aquellos socios que estn apuntados a
clases colectivas en ms de un centro.
4. Obtener el centro que tiene ms clases colectivas en el horario semanal impartidas por el
mismo profesor.
5. Obtener el nombre y apellidos de los profesores que dan ms de 2 horas de clases
colectivas en ms de un centro.
6. Obtener el conjunto de productos que se venden en todas las tiendas.
7. Obtener los productos que estn en oferta en ms de una tienda.
8. Obtener la lista de profesores que dan clases de entrenamiento personal, pero
no de clases colectivas, ni siquiera sustituciones.
9. Obtener el centro en el que se haya producido el mayor nmero de sustituciones por un
mismo profesor en la semana en curso.
10. obtener el producto o productos que tenga ms valor en stock (precio nmero de
unidades) en todas las tiendas.
11. Obtener la lista de productos que nunca ha estado en promocin en ningn centro.
12. Obtener la lista de productos que han estado en promocin al menos una vez, pero
slo en un centro.
13. Obtener la lista de socios que se ha apuntado a un torneo sin perder ninguna hora de
entrenamiento personal.
14. Obtener la lista de los socios que se han apuntado al mayor nmero de torneos.

Disparadores:
15. Crear un disparador que compruebe que al dar de alta un horario de entrenam iento
personal, el profesor no tiene asignadas clases colectivas en el mismo horario.
16. Crear un disparador que al registrar una compra en una de las tiendas, compruebe que hay
existencia en stock suficiente.
17. Crear un disparador que al apuntarse un socio a un torneo compruebe que existen plazas
libres.

Procedimientos almacenados:
18. Crear un procedimiento que admita como parmetro un cdigo de socio y nos devuelva el
listado de clases colectivas y de entrenamiento personal a las que est apuntado.
19. Crear un procedimiento que admita como parmetro un cdigo de socio y nos devuelva el
importe gastado por el socio, sin incluir las cuotas mensuales.
20. Crear un procedimiento al que se le pase como parmetro un cdigo de socio y un cdigo
de torneo y realice la inscripcin, comprobando que no est completa la misma para el
torneo.

Nota: En las cuestiones relativas a horarios (clases, entrenamiento personal, etc), almacenar
las horas como nmeros, no como fechas.

Se debe realizar una memoria explicativa que incluya:


a) Una primera pgina con el nombre del alumno/a, y la fecha de entrega de la
prctica.
b) Un modelo Entidad/Relacin que represente el modelo de datos necesario
para crear el sistema descrito. Juntamente con este modelo, se incluir una
explicacin de cada una de las entidades y relaciones junto con sus atributos. El
modelo Entidad/Relacin debe seguir la notacin Chen y se debe incluir
obligatoriamente las cardinalidades mnimas y mximas, as como las claves de cada
una de las entidades. Se deben incluir de manera explcita todas las suposiciones
realizadas por los alumnos y que no hayan sido expuestas en el enunciado y no
contradigan el mismo.
c) Realizar el paso a tablas, obteniendo las relaciones resultantes e indicando las
claves de cada una de las tablas.
d) Incluir el conjunto de ficheros script Sql necesarios para la creacin del esquema
completo de la base de datos en MySQL. Crear las tablas resultantes del anlisis del
problema, teniendo en cuenta la problemtica asociada a la integridad referencial.
Utilizar dominios en la creacin del esquema cuando se crea conveniente. Emplear
restricciones Check de atributo o tabla.
e) Incluir el conjunto de ficheros con los scripts Sql que solucionan los problemas
planteados en los apartados de este enunciado en la pgina dos. La solucin a cada
uno de los apartados debe ser incluida en un nico fichero que lo resuelva y
cuyo nombre debe hacer referencia al nmero del apartado. Para las consultas
Sql (cuestiones 1-14) se deber indicar tambin el resultado obtenido.
Se entregar un CD con los cinco apartados (o se enviar por correo
electrnico a la direccin ecarballo@infor.uva.es), y en papel, nicamente se
entregar la primera pgina con el nombre del alumno y fecha de entrega, el
diagrama Entidad/Relacin y las tablas resultantes.
IMPORTANTE: Opcionalmente, para realizar este modelo se podr usar la herramienta
"Gerwin" (GNU Ferret) disponible en el sitio web de la asignatura de Bases de Datos. E n
c a s o d e u t i l i z a r e s t a herramienta, se debe comprobar y corregir el cdigo generado
aadiendo los comandos que se crean necesarios (fundamentalmente, integridad referencial)
para completar la prctica.

Normas:
1. La prctica se realizar en grupos de dos alumnos o de forma individual.
2. Los apartados con comandos SQL de la prctica debern funcionar en el gestor
MySQL, que est disponible en los laboratorios de la Escuela de Informtica.
3. El diseo del modelo Entidad/Relacin se entregar por email a la direccin
ecarballo@infor.uva.es antes del 31/12/2007.
4. La fecha lmite de la prctica (memoria y ficheros) coincidir con el da del examen de
la asignatura en la convocatoria ordinaria de febrero del curso 2007/08.

S-ar putea să vă placă și