Instrucciones:
Antes de iniciar el proceso es necesario que consultes y descargues los archivos ZIP. Posteriormente realiza lo siguiente:
1. Instalar la base de datos Mysql 5.0 o superior. 2. Instalar y utilizar la base de datos de ejemplo adjunta llamada “sakila‐schema.sql A partir de la instalación instalación de la base base de datos Mysql Mysql realiza lo lo siguiente:
Consultas.
1. Seleccionar todos los actores que hayan participado en una película de comedia (Comedy) 2. Saber cuántas películas, de que categoría y en qué idioma ha filmado la Actriz SANDRA KILMER 3. Seleccionar el nombre de la película y de los actores de todas aquellas que sean filmadas en idioma Italiano 4. Seleccionar la dirección completa de los compradores que sean de México y USA 5. Seleccionar la dirección completa del staff que sean de USA 6. Quién es el responsable de cada una de las tiendas y su dirección, junto con la dirección de la tienda. 7. Cuántas rentas se realizaron en cada uno de los meses del año 2005 y 2006 8. Qué responsable responsable del staff realizó realizó más rentas y cuál fue el ingreso 9. Quién fue la persona que realizo más rentas de una película en Francés 10. Qué actores son los que prefieren las personas que viven en México
Procesos. 1. ¿Cuáles serían los cambios necesarios para agregar una dirección a los actores? 2. ¿Qué necesitarías necesitarías hacer para para saber de qué país país es cada película? 3. Agregar una tabla para guardar los datos del director de la película. 4. Crear una vista que nos indique cuántas películas hay en cada idioma. 5. ¿Qué pasa si borramos una tienda?
Instalación:
Instalar y utilizar la base de datos adjunta.
Consultas.
1. Seleccionar todos los actores que hayan participado en una película de comedia (Comedy) SELECT first_name AS Nombre, Last_name AS Apellido, name AS Categoria, title AS Pelicula FROM actor ac, category ca, film WHERE ca.name = 'Comedy';
2
Saber cuántas películas, de que categoría y en qué idioma ha filmado la Actriz SANDRA KILMER
SELECT COUNT(*) AS Numero, category.name AS Nombre_Categoria, language.name AS Idioma FROM actor ac, category, language WHERE ac.first_name = 'SANDRA' AND ac.last_name = 'KILMER';
3.
Seleccionar el nombre de la película y de los actores de todas aquellas que sean
filmadas en idioma Italiano. SELECT film.title AS Pelicula, actor.first_name AS Nombre, actor.Last_name AS Apellido, name AS Idioma FROM film, actor, language id WHERE id.name = 'Italian';
4.
Seleccionar la dirección completa de los compradores que sean de México y USA
SELECT address AS Direccion, country As pais FROM address ad, Country co WHERE co.country ‘Mexico’ OR co.country 'United States';
5.
Seleccionar la dirección completa del staff que sean de USA
SELECT address AS Dirección FROM address ad, Country co WHERE co.country = 'United States';
6.
Quién es el responsable de cada una de las tiendas y su dirección, junto con la
dirección de la tienda.
SELECT first_name AS Nombre, last_name AS Apellido, address AS Direccion_Encargado, address AS Direccion_Tienda FROM staff, store, address;
7.
Cuántas rentas se realizaron en cada uno de los meses del año 2005 y 2006
SELECT COUNT(*) AS Total_Rentas FROM rental r WHERE year(rental_date) in (2005, 2006);
8.
Qué responsable del staff realizó más rentas y cuál fue el ingreso
SELECT CONCAT(c.city, _utf8',', cy.country) AS store , CONCAT(m.first_name, _utf8' ', m.last_name) AS manager , SUM(p.amount) AS total_sales FROM payment AS p INNER JOIN rental AS r ON p.rental_id = r.rental_id INNER JOIN inventory AS i ON r.inventory_id = i.inventory_id INNER JOIN store AS s ON i.store_id = s.store_id INNER JOIN address AS a ON s.address_id = a.address_id INNER JOIN city AS c ON a.city_id = c.city_id INNER JOIN country AS cy ON c.country_id = cy.country_id INNER JOIN staff AS m ON s.manager_staff_id = m.staff_id GROUP BY s.store_id ORDER BY cy.country, c.city
9.
Quién fue la persona que realizo más rentas de una película en Francés
SELECT first_name AS Nombre,count(*) FROM staff, rental, language la WHERE la .name='FRENCH' ;
10. Qué actores son los que prefieren las personas que viven en México
SELECT first_name AS Nombre, Last_name AS Apellido FROM actor ac, country co where co.country ='Mexico'
Procesos: muestra las 5 operaciones solicitadas en el archivo de apoyo con su respectivo código de la consulta que compruebe el correcto funcionamiento de las operaciones realizadas. 1.- ¿Cuáles serían los cambios necesarios para agregar una dirección a los actores? ALTER table actor ADD address varchar(50); Agregar a la tabla actor el atributo address (direccion)
2. ¿Qué necesitarías hacer para saber de qué país es cada película?
Una nueva tabla llamada country_film con una llave llamada country_film_id, y el campo country, CREATE TABLE cuntry_film ( country_film_id smallint unsigned default null auto_increment, country varchar(50) not null, PRIMARY KEY (country_film_id) );
3. Agregar una tabla para guardar los datos del director de la película. Como ya se creó una tabla para saber de qué país es cada película, se le agrega un campo que se llame dirección /*ALTER table cuntry_film ADD address varchar(50) not null;*/
4. Crear una vista que nos indique cuántas películas hay en cada idioma. SELECT film.title AS Pelicula, actor.first_name AS Nombre, actor.Last_name, name AS Idioma FROM film, actor, language id WHERE id.name = name
5. ¿Qué pasa si borramos una tienda?
Afectaría a la entidad (personal) staff ya que hay una relación con el código Id como clave primaria Afectaría a la entidad Alquiler (rental) ya que tienda (store) aparece como atributo foráneo. La entidad cliente (customer) afectaría ya hay una relación entre la entidad tienda (store) y cliente al pasar la entidad tienda a la entidad cliente como clave primaria. La entidad cliente (customer) afectaría a dirección (address) ya que hay una relación con el código Id como clave primaria. Afectaría a inventario (Inventory) ya que hay una relación del código Id como primaria. Prácticamente se afectarían toda la relación entre las entidades de la base de datos porque al borrar tienda (store) se perdería la relación con algunas entidades y no tendríamos información de la tienda (stores) y sus atributos.
.
Bibliografía: https://prezi.com/ilb9hxypaunp/manual-de-bases-de-datos-en-mysql-workbench/ https://www.youtube.com/watch?v=jrnrHrxNmpk&list=PLx9gPtuzG7IZyYqcKq290SKpgFzimJfAO&inde x=11 https://www.youtube.com/watch?v=rzgF2L3qiYA&list=PLx9gPtuzG7IZyYqcKq290SKpgFzimJfAO&inde x=8 https://www.youtube.com/watch?v=oNn30HRJPr0 https://dev.mysql.com/downloads/windows/installer/5.5.html http://www.microsoft.com/en-us/download/confirmation.aspx?id=17113