Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Practica 3.1
Practica 3.1
4-05-2020
UNIDAD 3
Se desea diseñar una base de datos relacional que almacene la información sobre los
préstamos de las películas de un vídeo club. En la actualidad la gestión de esta información se
lleva cabo del siguiente modo: Cuando se hace un préstamo se rellena una ficha en la que se
anota el socio que se lleva la película, la fecha y el número de la cinta que se lleva, que es único
(de cada película hay varias copias en cintas distintas). Esta ficha se deposita en el archivador
de películas prestadas.
Socio
Fecha
préstamos Numero de cinta (único)
Socio
Lista de espera Película
estado
Con este análisis previo se puede ir clasificando la información y todos los campos que dicen
(varios) en realidad son campos multivaluados y se deben de corregir creando más entidades.
Paso 2 Identificar Entidades. En este caso deben asegurarse de qué cada entidad tenga
atributos que le pertenezcan por ejemplo Películas tiene (título, duración) pero no tiene
prestamos ya que prestamos es un campo multivaluado y debería de ir en otra entidad.
Este paso debe concordar con lo que se analizó en el paso 1; más lo que por lógica deban
agregar.
La entidad prestamos en la problemática solo tiene Socio, Fecha, Numero de cinta (único),
para que no haya redundancia de datos en lugar de tener un campo socio (nombre ) se hace
un catálogo de socios, es decir una nueva entidad y se necesita también número de cinta que
es el id_copia de la tabla copias de las películas. La solución quedaría de la siguiente manera.
Recuerden que peliculasPrestadas se vuelve otra entidad para evitar redundancia en caso de
que el socio se quiera llevar 10 películas, también recuerden que existe una relación entre
películas y copias, pero como este software es libre solo deja hacer algunos objetos.
Una vez prestada la película ya se pueden establecer las devoluciones, solo se necesita la fecha
de devolución
Para la lista de espera se tiene el siguiente modelo, se deben relacionar las entidades socio y
película
Con lo antes analizado se tiene un panorama completo para realizar el modelo ER, en este se
establecen la cantidad de entidades y los verbos con el que se van a programar las relaciones.
Paso 3 Establecer las relaciones. Determinar la relación que existe entre cada entidad,
implementar el modelo ER.
Son 14 entidades de las cuáles 12 entidades son débiles y 2 son fuertes, cada rombo pequeño
establece una relación entre dos entidades siendo éstas 17 relaciones. Con modelo Er en mano
se procede a crear la base de datos no sin antes establecer los verbos de las 17 relaciones
Paso 4 Crear la base de datos en MySQL u otro gestor que tengan instalado. Colocar los
Query´s de la creación de la base de datos, creación de tablas, relaciones y dos datos en cada
tabla una vez que ya existan las relaciones.
use Video_club;
Show table;
Si las foreign key se hacen por separado no es necesario revisar la prioridad de las tablas de lo
contrario se tendrían que crear primero las entidades fuertes (PK) y posteriormente las débiles
(FK).
alter table Actores add constraint foreign key Es (Id_persona) references Personas
(Id_persona);
alter table Socios add constraint foreign key Son (Id_persona)references Personas
(Id_persona);
alter table Directores add constraint foreign key Pertenece
(Id_persona ) references Personas (Id_persona );
Para almacenar los datos se debe comenzar con las entidades fuertes.
Generos
Insert into generos (id_genero,des_gen) values(1,'Terror');
Insert into generos (id_genero,des_gen) values(2,'Drama');
Personas (en esta entidad deben agregarse 6 personas para que 2 sean directores, 2 socios y 2
actores)
insert into personas
(id_persona,nombre,ap_paterno,ap_materno,dir,telefono)
values(100,'Brad','Pit','','Los Ángeles’,’1234456789’);
de aquí en adelante ustedes deberán hacer los insert e ir colocando los querys con los
siguientes datos
PERSONAS
ACTORES
Id_acto Id_persona
r
200 100
201 101
202 106
203 107
204 108
205 109
SOCIOS
Id_soci Id_persona
o
202 102
203 103
DIRECTORES
Id_director Id_persona
204 104
205 105
PELICULAS
COPIAS
id_copi Id_pelicula
a
400 300
401 300
402 300
403 300
404 301
405 301
406 302
407 302
408 302
409 303
410 304
411 304
412 305
413 305
GENERO_FAV
ACTOR_FAV
DIRECTOR_FAV
PRESTAMOS
PELICULASPRESTADAS
Contestar lo siguiente:
1.- Hay un detalle en el almacenamiento de los datos. ¿Podría indicar cuál es el patrón de
datos que ya no se respetó y en qué entidades ?
2.- Cuál es su propuesta de solución para corregir el patrón de datos que no se respetó
CONCLUSIONES: