Está en la página 1de 8

EJERCICIOS DE BASES DE DATOS PARA APLICAR EN

MySQL
EJERCICIO 1: Campamentos de verano
Los organizadores de un campamento de verano nos han pedido que diseemos una
base de datos para recoger los datos del campamento del verano que viene. Hemos
hablado con ellos, y hemos obtenido las siguientes especificaciones:
En el campamento se alojaran nios entre los 10 y los 14 aos.
A cada nio interesado en asistir se le abre una ficha de inscripcin en la que figuran
su nombre y apellidos, su edad, direccin, nombre de sus padres un telfono de
contacto y la enseanza que se encuentra cursando (Primaria o ESO).
Cuando llegue el verano, los nios que se encuentren cursando primaria sern
alojados en cabaas mientras que los nios que se encuentran cursando ESO se
alojarn en tiendas de campaa.
Estas tiendas y cabaas tienen diferente nmero de plazas.
Adems, una vez que se cierre el plazo de inscripcin se harn equipos de nios para
que realicen en equipo las actividades programadas en el campamento.
Una actividad desarrollada por un grupo ser guiada por un monitor.
Para ello, el campamento cuenta con un grupo de monitores y un conjunto de
actividades programadas de forma que cada grupo nunca repetir actividad, un monitor
nunca guiar la misma actividad a dos grupos diferentes y un grupo nunca har dos
actividades con un mismo monitor.
Cuando la fecha de comienzo del campamento est fijada los organizadores se
pondrn en contacto con los monitores para comunicrsela junto con las actividades
que han de desarrollar y con que grupos han de desarrollarlas. Adems en este
momento se harn pblicos unos listados obtenidos de la base de datos y que
indiquen, para cada nio, el grupo que le ha sido asignado y la tienda o cabaa en la
que se alojar.

EJERCICIO 2: Biblioteca
Supongamos que queremos disear una base de datos para una biblioteca y hemos
conocido que esta funciona de la siguiente forma:
En la biblioteca se encuentran, como es natural, una serie de libros que los empleados
solicitan a las editoriales. Cuando un libro se recibe se le da de alta construyndole una
ficha para bsqueda por autor y otra ficha para bsqueda por tema. En ambas fichas
aparecen el ttulo del libro, el nombre del autor y su nacionalidad, la editorial a la que
pertenece la publicacin, el tema sobre el que trata, el ISBN y la estantera de la
biblioteca en la que se encuentra. Hay que aclarar que en la biblioteca no se
encuentran ejemplares repetidos de ningn libro. Las estanteras de la biblioteca tienen
un nmero y un lugar asignado dentro de la biblioteca. Un empleado puede solicitar un
libro escribiendo una carta de peticin a la editorial correspondiente. La direccin a la
que ha de dirigir la carta se encuentra en un archivo de editoriales.
Para acceder a los libros de la biblioteca es necesario la posesin de un carn que
acredita a los distintos usuarios. Este carn se confecciona a cada persona la primera
vez que intenta retirar un libro. Cada usuario solo puede tener retirado como mximo
un libro en cada instante determinado. El mximo periodo de tiempo que un usuario
puede tener un libro es de 10 das. Transcurrido el cual se penalizar al usuario con
una multa de 1 euro por cada da de demora en la devolucin, durante los primeros 3
das y con la suspensin del carn a partir del cuarto da durante un tiempo que podr
ser establecido por el empleado de la biblioteca en funcin de las circunstancias que
estime oportuno considerar.
En la biblioteca les gustara disponer de un listado que se lanzara al final de cada da y
en el que aparecera, para cada libro que se encuentra retirado, el ttulo, el ISBN, el
autor y el nmero del carn, nombre y el nmero de identificacin del usuario que lo
mantiene retirado.
Cuando un usuario intenta retirar un libro ha de presentar su carn para que se tome
nota de la retirada. Si el libro que desea un usuario A no est disponible por haber sido
retirado por otro usuario B, se toma nota del libro y del usuario A para llamarle por
telfono y avisarle cuando el libro ha sido devuelto. En ese caso, el usuario A podr
solicitar que se le reserve el libro por un mximo de 2 das para evitar que otro usuario
lo retire antes de que A pueda acudir a la biblioteca a retirarlo. Transcurrido ese plazo,
si A no lo ha retirado, el libro volver a estar disponible para cualquier usuario.

Los empleados de la biblioteca quieren obtener estadsticas sobre: penalizaciones de


los usuarios (usuarios ms penalizados, usuario penalizado por ms tiempo, ),
prstamos (libros ms veces prestados, usuario que ms libros ha retirado, usuarios
que han retirado un mismo libro ms de una vez, ), usuarios informales (usuarios que
varias veces han reservado un libro que luego no han pasado a retirar).

EJERCICIO 3: Empresa de lneas areas


Construir un diagrama entidad-relacin para una empresa de lneas areas. La empresa
tiene distintos tipos de empleados (pilotos, personal auxiliar de vuelo, mecnicos,
personal de gestin, de administracin, de limpieza). La informacin que mantiene sobre
sus empleados es: nmero de empleado, nombre, cargo, direccin y salario. Adems, le
interesa almacenar datos sobre: los vuelos que realiza (nmero de vuelo, avin empleado,
fecha, origen, destino, hora de salida, hora de llegada y empleados asignados al vuelo),
los pasajeros registrados en cada vuelo (nombre, direccin y telfono) y los aviones que
posee la empresa (constructor, nmero de modelo, nmero de serie). En el caso de los
pilotos, se desea hacer constar adems su capacidad para poder pilotar los distintos
modelos de aviones que posee la empresa.

EJERCICIO 4: Fbrica y tiendas de productos


Supn que tienes que disear una base de datos para una organizacin que dispone de
una fbrica y una cadena de tiendas donde se venden los productos construidos en la
fbrica. Para la construccin de los productos, se dispone de un conjunto de piezas que
son suministradas por una serie de proveedores. Una pieza solo puede ser suministrada
por un proveedor. Al final de cada da se comprueba, para cada pieza, qu cantidad
queda en stock y si este es menor que una cantidad prudente se manda un FAX al
proveedor correspondiente realizndole un pedido.
Cada empleado de la fbrica est dedicado a la construccin de un solo producto. Estos
productos estn constituidos por una serie de piezas. Cuando un empleado acaba la
construccin de una unidad de un producto incrementa el stock de ste.
La fbrica est estructurada en forma de departamentos a los que pertenecen los distintos
empleados. Lgicamente, un empleado solo puede pertenecer a un departamento. Un
producto solo puede ser fabricado dentro de cada departamento por un solo empleado. A
final de mes, el departamento, realiza una transferencia bancaria a cada empleado por el
total de la nmina.
Cada departamento suministra productos a las tiendas. Cuando una tienda tiene escasez
de un producto manda un fax al departamento realizndole un pedido. A continuacin el
departamento remite el correspondiente pedido a la tienda por medio de una empresa de
envos.

EJERCICIO 5: Ejercicio del Servicio Militar


Se desea disear una Base de Datos para llevar la gestin de los cuarteles. Los datos a
tener en cuenta son:
Existen diferentes Cuerpos del Ejrcito (Infantera, Artillera, etc.), y cada uno se define
por un cdigo de Cuerpo y denominacin.
Un soldado se define por su cdigo de soldado (nico), su nombre y apellidos, y su
graduacin.
Un soldado pertenece a un nico cuerpo.
Existen varios cuarteles, cada uno se define por su cdigo de cuartel, nombre y
ubicacin.
Un soldado est destinado en un cuartel.
En cada cuartel, los soldados estn agrupados en compaas, cada una de las cuales
se numera de modo nico en su cuartel.
Un soldado pertenece a una nica compaa.
En cada cuartel existen una serie de servicios que se han de realizar (guardias,
imaginarias, etc.). Algunos de esos servicios pueden ser especficos para un lugar en el
cuartel (guardia en la garita Norte) y/o para un perodo de tiempo (guardia de 6 a 8 en
la puerta, oficial de guardia de un da). Se desea gestionar la asignacin de los
servicios a los soldados.

EJERCICIO 6: Ejercicio Bases de datos Vuelos


Disee una base de datos en MySQL respetando el modelo relacional que acompaa este
enunciado (ver apndice A). El nombre de dicha base de datos deber ser \vuelos" y los
esquemas de las tablas debern respetar los esquemas propuestos por dicho modelo

relacional. Se debern respetar los nombres de las relaciones y los atributos, as como las
restricciones de llaves primarias y forneas. No se aceptaran bases de datos que no
respeten estas convenciones.
Vuelos programados (numero, aeropuerto salida, aeropuerto llegada). Nmero es
una cadena de caracteres; aeropuerto salida y aeropuerto llegada corresponden a
cdigos de aeropuertos.
Salidas (vuelo, da, hora sale, hora llega, modelo avin). Vuelo corresponde a un
numero de vuelo programado; da = 'Do','Lu','Ma','Mi','Ju','Vi','Sa'; modelo avin
corresponde a un modelo de modelos avin.
Instancias vuelo (vuelo, fecha, da, estado) vuelo y da corresponden a una salida;
estado es una cadena de caracteres.
Aeropuertos (cdigo, nombre, telfono, direccin, pas, estado, ciudad). cdigo,
nombre, telfono y direccin son cadenas de caracteres; Pas, estado y ciudad
corresponden a una ubicacin.
Ubicaciones (pas, estado, ciudad, uso). Pas, estado y ciudad son cadenas de
caracteres; uso es un entero en el intervalo [-12,12].
Modelos avin (modelo, fabricante, cabinas, cant asientos). modelo y fabricante son
cadenas de caracteres; cabinas y cant asientos son enteros positivos.
Clases (nombre, porcentaje). nombre es una cadena de caracteres y porcentaje es un
nmero real en el intervalo [0, 0.99].
Comodidades (cdigo, descripcin). cdigo es un nmero natural y descripcin es
una cadena de caracteres.
Pasajeros (doc tipo, doc nro, apellido, nombre, direccin, telfono, nacionalidad). doc
nro es un nmero natural; el resto de los atributos son cadenas de caracteres.
Empleados (legajo, password, doc tipo, doc nro, apellido, nombre, direccin, telfono).
doc nro y legajo son nmeros naturales; el resto de los atributos son cadenas de
caracteres.
Reservas (nmero, fecha, vencimiento, estado, doc tipo, doc nro, legajo). nmero es
un natural; fecha y vencimiento son fechas; estado es una cadena de caracteres; doc
tipo, doc numero corresponden a un pasajero; legajo corresponde a un empleado.

Brinda (vuelo, da, clase, precio, cant asientos). vuelo y da corresponden a una
salida; clase corresponde al nombre de una clase; precio es un real positivo con 2
dgitos decimales y 5 dgitos en la parte entera; cant asientos es un natural.
Posee (clase, comodidad). clase corresponde al nombre de una clase y comodidad
corresponde al cdigo de una comodidad.
reserva vuelo clase (nmero, vuelo, fecha vuelo, clase). nmero corresponde a un
nmero de reserva; vuelo y fecha vuelo corresponden a una instancia de vuelo; clase
corresponde al atributo nombre de clases.

También podría gustarte