Está en la página 1de 5

ÍNDICE

ESQUEMA RELACIONAL 3
RELACIONES 3
OBLIGATORIEDAD 3
UNICIDAD 3
GRAFO RELACIONAL 4
FICHA DEL TRABAJO 4

1
DESCRIPCIÓN SEMÁNTICA
En este trabajo vamos a gestionar una red de cines, repartidas por toda la península
y para ello necesitaremos una base de datos.

La tabla cliente consta de una clave principal que es id, que está relacionado con la
tabla entradas.id_cliente, un DNI que tiene una restricción de unique y de not null,
por lo que este campo tendrá que estar relleno y además no podrá existir 2 DNIs
iguales. También contiene un campo nombre con una restricción de not null, que
también tiene que ser rellenado. También existen los campos fecha de nacimiento y
compra online. Todos los clientes tendrán que tener DNI para poder comprar una
entrada.

Por otro lado contamos con una tabla de entradas, en la cual reunimos todos los
datos necesarios para poder ver tu película. Entre ellos tenemos el campo id_cliente
que es clave principal que a su vez está asociado a la id única de cada cliente.
Tenemos el campo id_pelicula que relaciona la película que quieres ver, id_sala te
indica la sala en la que verás la película, id_ cine es más un dato interno que indica
al sistema cual es el cine, id_horario relaciona el horario en el que el cliente verá la
película, hora_compra es la hora de compra de dicha entrada, precio es la cantidad
que el cliente paga por la entrada y butaca es el asiento asignado en dicha sala.
Tanto el campo precio y butaca tiene la restricción not null, para que siempre tenga
que existir un valor en dichos campos.

La tabla horarios, es la tabla que relaciona las películas que se encuentran


disponibles, en esta tabla contamos con varias claves principales entre ellas, la id,
id_pelicula, id_sala y id_cine. El campo id_pelicula relaciona el id de la película que
hay disponible en ese horario, id_sala relaciona en qué sala se podrá ver dicha
película, fecha_inicio nos indica la hora a la que comienza la película y fecha final a
la hora que finaliza.

En la tabla películas nos indica todas las películas disponibles que hay y está
compuesta por la clave principal Id y los campos, nombre que nos indica el nombre
de la película, la fecha_lanzamiento, nos indica el día que salió y la
edad_recomendada que nos dice el año recomendado para consumir dicha película.

Contamos con una tabla salas, que cuenta con dos claves principales, id y id_cine,
id_cine está relacionado con la tabla cines.id para poder conocer a que cine
pertenece esta sala. Aparte de estos dos atributos, contamos con el número de la
sala y la capacidad de la sala.

La tabla cines estará compuesta por id como clave principal que está relacionado
con salas.id_cine, ciudad, dirección y nombre. Tanto ciudad, dirección y nombre
será obligatorio para conocer la localización del cine.

2
Nuestro cine cuenta con varias normas, el mismo cliente no puede comprar otra
entrada en la misma hora. En nuestra base de datos un cliente no podrá comprar
una entrada para una película si la edad de este (Cliente.fecha_nacimiento) es
menor a la edad recomendada para la película (películas.edad recomendada).
Quiere decir que tiene que coincidir el ID en todas las tablas para un mismo cliente.

ESQUEMA RELACIONAL
Clientes (id, dni, nombre, fecha_nacimiento, compra_online)
Entradas (id_cliente, id_pelicula, id_sala, id_cine, id_horario, hora_compra, precio,
butaca)
Horarios (id, id_pelicula, id_sala, id_cine, fecha_inicio, fecha_final)
Peliculas (id, nombre, fecha_lanzamiento, edad_recomendada)
Salas (id, numero_sala, id_cine, capacidad)
Cines (id, ciudad, dirección, nombre)

RELACIONES
Entradas.id_cliente → Cliente.id
Entradas.id_pelicula → Horarios.id
Entradas.id_peliculas → Horarios.id_pelicula
Entradas.id_sala → Horarios.id_sala
Entradas.id_cine → Horarios.id_cine
Horarios.id_pelicula → Peliculas.id
Horarios.id_sala → Salas.id
Horarios.id_cine → Salas.id_cine
Salas.id_cine → Cines.id

OBLIGATORIEDAD
Clientes.dni Not Null
Clientes.nombre Not Null
Entradas.precio Not Null
Entradas.butaca Not Null
Cine.dirección Not Null
Cine.ciudad Not Null
Cine.nombre Not Null

UNICIDAD
Clientes.dni unique

3
GRAFO RELACIONAL

CÁLCULO RELACIONAL
1. El mismo cliente no puede comprar otra entrada en la misma hora.

∀ c(Cliente(c) → ¬∃ e1(Entradas(e) ^ e2(Entradas(e2) ^ e1.hora_compra =


e2.hora_compra ^ c.id = e1.id_cliente ^ c.id = e2.id_cliente )))

2. En nuestra base de datos un cliente no podrá comprar una entrada para una
película si la edad de este (Cliente.fecha_nacimiento) es menor a la edad
recomendada para la película (películas.edad recomendada).

∀ c(Cliente(c) → ¬∃ e(Entradas(e) ^ p(Peliculas(p) ^ h(Horarios(h) ^ c.id =


e.id_cliente ^ e.id_pelicula = h.id_pelicula ^ h.id_pelicula = p.id ^ Date -
c.fecha_nacimiento >= p.edad_recomendada ))))

3. Quiere decir que tiene que coincidir el ID en todas las tablas para un mismo
cliente.

∀ e(Entradas(e) →∃ h(Horarios(h) ^ p(Peliculas(p) ^ e.id_pelicula = h.id_peliculas ^


h.id_peliculas = p.id)))

FICHA DEL TRABAJO

4
Apellidos y Nombre Puntos

Parrilla Bejerano, Juan Eloy 20%

Barrillo Ávila Iván 20%

Gómez Pérez. Nicolás 20%

Castaño Gómez, Iván 20%

García de la Torre Novillo, Álvaro 20%

También podría gustarte