Ejercicios – Modelo E/R
1. Una empresa vende productos a varios clientes. Se necesita conocer los
datos personales de los clientes (nombre, apellidos, CI, dirección y fecha de
nacimiento). Cada producto tiene un nombre y un código, así como un precio
unitario. Un cliente puede comprar varios productos a la empresa, y un
mismo producto puede ser comprado por varios clientes. Los productos son
suministrados por diferentes proveedores. Se debe tener en cuenta que un
producto sólo puede ser suministrado por un proveedor, y que un proveedor
puede suministrar diferentes productos. De cada proveedor se desea
conocer el ID, nombre y dirección.
2. En una clínica se necesita llevar la gestión de pacientes y médicos. De cada
paciente se desea guardar el código, nombre, apellidos, dirección,
población, provincia, código postal, teléfono y fecha de nacimiento. De cada
médico se desea guardar el código, nombre, apellidos, teléfono y
especialidad. Se desea llevar el control de cada uno de los ingresos que el
paciente hace en el hospital. Cada ingreso que realiza el paciente queda
registrado en la base de datos. De cada ingreso se guarda el código de
ingreso, el número de habitación y cama en la que el paciente realiza el
ingreso y la fecha de ingreso. Un médico puede atender varios ingresos, pero
el ingreso de un paciente solo puede ser atendido por un único médico. Un
paciente puede realizar varios ingresos en el hospital.
3. Una liga de fútbol profesional ha decidido informatizar sus instalaciones
creando una base de datos para guardar la información de los partidos que
se juegan en la liga. Se desea guardar en primer lugar los datos de los
jugadores. De cada jugador se quiere guardar el nombre, fecha de
nacimiento y posición en la que juega (portero, defensa, mediocampista,
delantero). Cada jugador tiene un código de jugador que lo identifica de
manera única. De cada uno de los equipos de la liga es necesario registrar el
nombre del equipo, nombre del estadio en el que juega, la capacidad que
tiene, el año de fundación del equipo y la ciudad de la que es el equipo. Cada
equipo también tiene un código que lo identifica de manera única. Un jugador
solo puede pertenecer a un único equipo. De cada partido que los equipos
de la liga juegan hay que registrar la fecha en la que se juega el partido, los
goles que ha metido el equipo de casa y los goles que ha metido el equipo
visitante. Cada partido tendrá un código numérico para identificar el partido.
También se quiere llevar un recuento de los goles que hay en cada partido.
Se quiere almacenar el minuto en el que se realizar el gol y la descripción del
gol. Un partido tiene varios goles y un jugador puede meter varios goles en
un partido. Por último, se quiere almacenar, en la base de datos, los datos
de los presidentes de los equipos de fútbol (CI, nombre, apellidos, fecha de
nacimiento, equipo del que es presidente y año en el que fue elegido
presidente). Un equipo de fútbol tan sólo puede tener un presidente, y una
persona sólo puede ser presidente de un equipo de la liga.
4. Se desea informatizar la gestión de un centro de enseñanza para llevar el
control de los estudiantes matriculados y los profesores que imparten clases
en ese centro. De cada profesor y cada estudiante se desea recoger el
nombre, apellidos, dirección, CI, fecha de nacimiento, y teléfono. Los
estudiantes se matriculan en una o más asignaturas, y de ellas se desea
almacenar el código de asignatura, nombre y número de horas que se
imparten a la semana. Un profesor del centro puede impartir varias
asignaturas, pero una asignatura sólo es impartida por un único profesor. De
cada una de las asignaturas se desea almacenar también la nota que saca el
estudiante y las incidencias que puedan darse con él. Además, se desea
llevar un control de los cursos que se imparten en el centro de enseñanza.
De cada curso se guardará el código y el nombre. En un curso se imparten
varias asignaturas, y una asignatura sólo puede ser impartida en un único
curso. Las asignaturas se imparten en diferentes aulas del centro. De cada
aula se quiere almacenar el código, piso del centro en el que se encuentra y
número de pupitres de que dispone. Una asignatura se puede dar en
diferentes aulas, y en un aula se pueden impartir varias asignaturas. Se
desea llevar un registro de las asignaturas que se imparten en cada aula.
Para ello se anotará el mes, día y hora en el que se imparten cada una de las
asignaturas en las distintas aulas. La dirección del centro también designa a
varios profesores como tutores en cada uno de los cursos. Un profesor es
tutor tan sólo de un curso. Un curso tiene un único tutor. Se habrá de tener
en cuenta que puede que haya profesores que no sean tutores de ningún
curso.
5. Realizar el modelo E/R para una cadena de hoteles. Cada hotel (del que
interesa almacenar su nombre, dirección, teléfono, año de construcción,
etc.) se encuentra clasificado obligatoriamente en una categoría (por
ejemplo, tres estrellas) pudiendo bajar o aumentar de categoría. Cada
categoría tiene asociada diversas informaciones, como, por ejemplo, el tipo
de IVA que le corresponde y la descripción. Los hoteles tienen diferentes
clases de habitaciones (suites, dobles, individuales, etc.), que se numeran
de forma que se pueda identificar fácilmente la planta en la que se
encuentran. Así pues, de cada habitación se desea guardar el código y el tipo
de habitación. Los particulares pueden realizar reservas de las habitaciones
de los hoteles. En la reserva de los particulares figurarán el nombre, la
dirección y el teléfono. Las agencias de viaje también pueden realizar
reservas de las habitaciones. En caso de que la reserva la realiza una agencia
de viajes, se necesitarán los mismos datos que para los particulares, además
del nombre de la persona para quien la agencia de viajes está realizando la
reserva. En los dos casos anteriores también se debe almacenar el precio de
la reserva, la fecha de inicio y la fecha de fin de la reserva.