Hola a todos, hoy vamos a practicar con ejercicios modelo relacional sobre una base de datos de una empresa de alquiler de vehiculos.
Antes de comenzar, recuerda que tenemos un curso de modelo relacional que puedes revisar antes de hacer ejercicios, te lo dejo por aquí.
https://discoduroderoer.es/curso-modelo-relacional-para-disenar-bases-de-datos
Diagrama Modelo Entidad Relacion

Transformación a Modelo Relacional
Empezamos por la tabla cliente con sus atributos y su relación reflexiva.
Por la relación reflexiva, se crea un nuevo campo que apunta al codigo del cliente. Puede ser nulo.

Formato grafica:

Formato tabla:

Continuamos con reserva y su relación con cliente.
No se añade el campo calculado precio_total. Fecha fin podría ser nulo pero por el enunciado original se podría entender como que no es necesario.
La relación, como es 1:N, en la tabla reserva añadimos el codigo del cliente al ser donde esta el maximo N.

Formato gráfica:

Formato tabla:

Continuamos con la relación entre reserva y coche.
El atributo precio_alquiler de la relación se va a la tabla coche al tener la N como máximo en la relación 1:N
Se añade en la tabla coche, el atributo codigo_reserva por la relación 1:N
Mantenemos el codigo del cliente y el codigo de la agencia de la reserva.

Formato gráfica:

Formato tabla:

Continuamos con la relación entre reserva y agencia.
El codigo de la agencia se va a la tabla reserva, por la relación 1:N
Mantenemos el codigo de cliente en reserva.

Formato gráfica:

Formato tabla:

Por último, vamos con la relación entre coche y garaje.
Añadiremos en la tabla coche el codigo del garaje por la relación 1:N
Mantenemos el codigo de la reserva del coche.

Formato gráfica:

Formato tabla:
Resultado final
Formato gráfica:

Formato tabla:

Te dejo el Github con todo el contenido: https://github.com/DiscoDurodeRoer/curso-disenio-base-de-datos
Te dejo un video donde lo explicamos paso a paso.
¿Quieres mas ejercicios? Te dejo otro video.
Espero que os sea de ayuda, si tenéis dudas, preguntad, estamos para ayudarte.
Deja una respuesta