Sei sulla pagina 1di 4

UNIVERSIDAD ABIERTA PARA ADULTOS

Asignatura:
Sistema de Base de Datos

Tema:
Asignación Unidad VI

Facilitador:
Ing. Francisca Martínez Bussi, Ed.D.

Participante:
xxxxxxxxxxx

Matricula:
xx-xxx

Fecha:
22 de abril, 2019
Asignación VI
Sistema de información: Sistema para el alquiler de películas.

Realice el diseño físico con código del siguiente modelo relacional:

No pueden ser nulos los siguientes campos: Nombre de Socio, Título de Película. Sexo toma los valores H o
M. Por defecto, si no se indica nada un actor o actriz no es Protagonista (este campo toma valores S o N).

create database if not exists Sistema_Alquiler_Pelicula;


use sistema_alquiler_pelicula;
-- Tabla Director
create table Director (nombre varchar(25) primary key, nacionalidad varchar(35));
-- Tabla Pelicula
create table Pelicula (ID int primary key auto_increment, Titulo varchar(45) not null, Productora varchar (40), Nacionalidad varchar (25), Fecha date,
Director varchar(25), foreign key(Director) references Director(Nombre));
-- Tabla Actores
create table Actores (Nombre varchar (25) primary key, Nacionalidad varchar(35), Sexo char default 'H'); -- por defecto sera 'H' para hombre si es mujer
digitar 'M'.
-- tabla actua
create table actua (Actor char primary key default 'S', ID_Peli int, Prota varchar(2) default 'Si', foreign key(ID_Peli) references Pelicula(ID), foreign
key(Actor) references Actores(Nombre));
-- tabla Socio
create table Socio (DNI int primary key, Nombre varchar(25) not null, Direccion varchar(45), Telefono int, Avalador int, foreign key(Avalador) references
Socio(DNI));
-- tabla ejemplar
create table Ejemplar (Numero int primary key, Estado varchar(10) default 'Activo', ID_Peli int, foreign key(ID_Peli) references Pelicula(ID));
-- tabla alquila
create table alquila (FechaAlquiler date primary key, DNI int, ID_Peli int, Numero int, FechaDevolucion date, foreign key(DNI) references Socio(DNI),
foreign key(ID_Peli) references pelicula(ID), foreign key(Numero) references Ejemplar(Numero));

Luego, realice las siguientes operaciones de manipulación de datos:


Realice las siguientes inserciones con datos inventados.
 Inserte 2 directores.

insert into Director values('Christopher Nolan','Británico Estadounidense');


insert into Director values('Quentin Jerome Tarantino','Estadounidense');
 Inserte 4 películas. Todas ellas están dirigidas por alguno de los directores anteriores.
insert into pelicula (Titulo, Productora, Nacionalidad, Fecha, Director)
values('Pulp Fiction','Warner Bros','Estadounidense','1994-12-05','Quentin Jerome Tarantino');
insert into pelicula (Titulo, Productora, Nacionalidad, Fecha, Director)
values('Desperado','Twenty Fox','Estadounidense','1995-05-08','Quentin Jerome Tarantino');
insert into pelicula (Titulo, Productora, Nacionalidad, Fecha, Director)
values('Batman vs Superman','Warner Bros','Estadounidense','2016-03-04','Christopher Nolan');
insert into pelicula (titulo, productora, nacionalidad, fecha, director)
values('El hombre de acero','Warner Bros','Estadounidense','2013-10-06','Christopher Nolan');

 Inserte 2 ejemplares de cada película.

insert into Ejemplar values(3,'Nueva',4);


insert into Ejemplar values(5,'Usada',3);

 Inserte 4 socios.

insert into Socio values(123456781, 'Roberto', 'Calle 4ta, santo domingo oeste', 44444444,9);
insert into Socio values(123456782, 'Manuel', 'Calle 3ra, santo domingo', 33333333,8);
insert into Socio values(123456783, 'Alan', 'Calle 5ta, santo domingo este', 22222222,7);
insert into Socio values(123456784, 'Marinny', 'Calle 1ra, santo domingo norte', 11111111,5);

 Inserte como mínimo 6 actores.

insert into actores values('Actor 1', 'Estadounidense', 'M');


insert into actores values('Actor 2', 'Británico', 'H');
insert into actores values('Actor 3', 'Haitiano', 'H');
insert into actores values('Actor 4', 'Británico', 'H');
insert into actores values('Actor 5', 'Británico', 'H');

 Cada película debe tener al menos el actor/actriz protagonista asociado.

insert into actua values('Actor 1',2,'N');


insert into actua values('Actor 2',1,'S');
insertTodos
into actua values('Actor 3',4,'N');
los ejemplares deben tener al menos 1 alquiler.
insert into actua values('Actor 4',3,'S');

Inserte valores para comprobar que la siguiente restricción funciona correctamente:


 No pueden ser nulos los siguientes campos: Nombre de Socio, Título de Película.

insert into socio (nombre) values ('');


insert into socio values(456701232, 'papito', 'Calle 7ma', 44444444, 456782201);

Inserte valores para comprobar que la siguiente restricción funciona correctamente:


 Sexo toma los valores H o M.
insert into actores (nombre, nacionalidad) values('Rosario Roberto','Dominicano');
Inserte valores para comprobar que la siguiente restricción funciona correctamente:
 Por defecto si no se indica nada un actor o actriz no es Protagonista (este campo toma valores S o N).

Exporte la base de datos a SQL.

Cambie la nacionalidad para los directores. Por ejemplo de ‘Estadounidense’ a ‘USA’ o similar,
dependiendo de los valores que haya introducido.

Cambie la nacionalidad para los actores. Por ejemplo de ‘Estadounidense’ a ‘USA’ o similar, depen-
diendo de los valores que haya introducido.
Modifique los datos de todos los socios para que el analista sea un único socio, siempre el mismo
para todos, excepto para el analista mismo que no dispone de ninguno.

-- Inserte valores para comprobar que la siguiente restricción funciona correctamente:


-- Por defecto si no se indica nada un actor o actriz no es Protagonista (este campo toma valores S o N).
update director set nacionalidad = 'Dominicano' where nombre = 'Quentin Jerome Tarantino';
update director set nacionalidad = 'Cubano' where nombre = 'Christopher Nolan';
update actores set nacionalidad = 'Dominicano' WHERE nombre = 'Actor 1';
update socio set nombre = 'Orlando', direccion = 'Mi casa', telefono = 809000000, avalador = 233456789 where dni != 42311222;
select * from director;
delete from director WHERE nombre = 'Quentin Jerome Tarantino';
select * from Ejemplar;
delete from Ejemplar where ID_Peli = 5;
-- exportado a tarea6b.sql

Elimine los socios cuyo número de teléfono empiece por una cifra inferior a 5. ¿Qué sucede?¿Por
qué? No se puede. Da error están relacionados con alquila.

Elimine los socios cuyo número de teléfono empiece por una cifra superior o igual a 5. ¿Qué suce-
de?¿Por qué? También da error, están relacionados.

¿Como lo solucionaría los problemas anteriores? ¿Podría haberse evitado el problema con otro
diseño físico?¿Cómo? Se soluciona modificando las claves foranias como la DNI en alquila.

Elimine todos los directores. ¿Qué sucede?¿Por qué? Da error, están relacionados, para eliminarlos hay que
modificar la claves foráneas y primarias.

Elimine 2 películas, las que desee.¿Qué sucede?¿Por qué?¿Como lo solucionaría? ¿Podría ha-
berse evitado el problema con otro diseño físico?¿Cómo? Da error, están relacionados, para eliminarlos hay
que modificar la claves foráneas y primarias.

Exporte la base de datos a SQL.


Listo 2 archivos.

Potrebbero piacerti anche