From 3cc7e7d6498d33ba663756d340d503e33f3d2413 Mon Sep 17 00:00:00 2001 From: Daniel Wilson Date: Tue, 24 Jan 2023 23:45:00 +0100 Subject: [PATCH] update --- ENTIDAD RELACION.png | Bin 0 -> 85105 bytes README.md | 1 + employees.sql | 108 ++++++++++++ queries.sql | 410 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 519 insertions(+) create mode 100644 ENTIDAD RELACION.png create mode 100644 employees.sql create mode 100644 queries.sql diff --git a/ENTIDAD RELACION.png b/ENTIDAD RELACION.png new file mode 100644 index 0000000000000000000000000000000000000000..937fbcfbddf565c724600d878435e94e1ceacaf1 GIT binary patch literal 85105 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 Tc3`0;^jzh+hC=l-%lH2SB3x%y literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 3b24771..87d2887 100644 --- a/README.md +++ b/README.md @@ -13,3 +13,4 @@ This repository contains only the following files: - **_README.md_**: this explanatory file. - **_employees.sql_**: file containing an example database provided by the official MySQL team, to import and use in our exercise. - **_queries.sql_**: file where we recorded all the necessary queries executed to fulfill this exercise. +- **_entidad relacion.png**: the image where the relation entity of the cine database is seen. diff --git a/employees.sql b/employees.sql new file mode 100644 index 0000000..345964d --- /dev/null +++ b/employees.sql @@ -0,0 +1,108 @@ +-- Sample employee database +-- See changelog table for details +-- Copyright (C) 2007,2008, MySQL AB +-- +-- Original data created by Fusheng Wang and Carlo Zaniolo +-- http://www.cs.aau.dk/TimeCenter/software.htm +-- http://www.cs.aau.dk/TimeCenter/Data/employeeTemporalDataSet.zip +-- +-- Current schema by Giuseppe Maxia +-- Data conversion from XML to relational by Patrick Crews +-- +-- This work is licensed under the +-- Creative Commons Attribution-Share Alike 3.0 Unported License. +-- To view a copy of this license, visit +-- http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to +-- Creative Commons, 171 Second Street, Suite 300, San Francisco, +-- California, 94105, USA. +-- +-- DISCLAIMER +-- To the best of our knowledge, this data is fabricated, and +-- it does not correspond to real people. +-- Any similarity to existing people is purely coincidental. +-- + +DROP DATABASE IF EXISTS employees; +CREATE DATABASE IF NOT EXISTS employees; +USE employees; + +SELECT 'CREATING DATABASE STRUCTURE' as 'INFO'; + +DROP TABLE IF EXISTS dept_emp, + dept_manager, + titles, + salaries, + employees, + departments; + +/*!50503 set default_storage_engine = InnoDB */; +/*!50503 select CONCAT('storage engine: ', @@default_storage_engine) as INFO */; + +CREATE TABLE employees ( + emp_no INT NOT NULL, + birth_date DATE NOT NULL, + first_name VARCHAR(14) NOT NULL, + last_name VARCHAR(16) NOT NULL, + gender ENUM ('M','F') NOT NULL, + hire_date DATE NOT NULL, + PRIMARY KEY (emp_no) +); + +CREATE TABLE departments ( + dept_no CHAR(4) NOT NULL, + dept_name VARCHAR(40) NOT NULL, + PRIMARY KEY (dept_no), + UNIQUE KEY (dept_name) +); + +CREATE TABLE dept_manager ( + emp_no INT NOT NULL, + dept_no CHAR(4) NOT NULL, + from_date DATE NOT NULL, + to_date DATE NOT NULL, + FOREIGN KEY (emp_no) REFERENCES employees (emp_no) ON DELETE CASCADE, + FOREIGN KEY (dept_no) REFERENCES departments (dept_no) ON DELETE CASCADE, + PRIMARY KEY (emp_no,dept_no) +); + +CREATE TABLE dept_emp ( + emp_no INT NOT NULL, + dept_no CHAR(4) NOT NULL, + from_date DATE NOT NULL, + to_date DATE NOT NULL, + FOREIGN KEY (emp_no) REFERENCES employees (emp_no) ON DELETE CASCADE, + FOREIGN KEY (dept_no) REFERENCES departments (dept_no) ON DELETE CASCADE, + PRIMARY KEY (emp_no,dept_no) +); + +CREATE TABLE titles ( + emp_no INT NOT NULL, + title VARCHAR(50) NOT NULL, + from_date DATE NOT NULL, + to_date DATE, + FOREIGN KEY (emp_no) REFERENCES employees (emp_no) ON DELETE CASCADE, + PRIMARY KEY (emp_no,title, from_date) +) +; + +CREATE TABLE salaries ( + emp_no INT NOT NULL, + salary INT NOT NULL, + from_date DATE NOT NULL, + to_date DATE NOT NULL, + FOREIGN KEY (emp_no) REFERENCES employees (emp_no) ON DELETE CASCADE, + PRIMARY KEY (emp_no, from_date) +) +; + +CREATE OR REPLACE VIEW dept_emp_latest_date AS + SELECT emp_no, MAX(from_date) AS from_date, MAX(to_date) AS to_date + FROM dept_emp + GROUP BY emp_no; + +# shows only the current department for each employee +CREATE OR REPLACE VIEW current_dept_emp AS + SELECT l.emp_no, dept_no, l.from_date, l.to_date + FROM dept_emp d + INNER JOIN dept_emp_latest_date l + ON d.emp_no=l.emp_no AND d.from_date=l.from_date AND l.to_date = d.to_date; \ No newline at end of file diff --git a/queries.sql b/queries.sql new file mode 100644 index 0000000..f24ebfd --- /dev/null +++ b/queries.sql @@ -0,0 +1,410 @@ +Use employees; +-- 1.4.1 INSERT DATA------------------------------------------------- + +-- employees +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(1, '2003/07/09', 'Raquel', 'Garcia Leon', 'F', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(2, '2001/07/17', 'Daniel', 'Villena Wilson', 'M', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(3, '1962/01/30', 'Jose', 'Villena Rojas', 'M', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(4, '1962/02/13', 'Janet Margaret', 'Wilson Perera', 'F', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(5, '1987/11/05', 'Michael', 'Villena Wilson', 'M', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(6, '2004/07/08', 'Lola', 'Benitez Lopez', 'F', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(7, '1989/06/11', 'Alba', 'Benitez Rodriguez', 'F', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(8, '1980/04/09', 'Sebastian', 'Villena Perez', 'M', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(9, '2003/07/09', 'Sebastian', 'Perez Perez', 'M', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(10, '1950/07/09', 'Sebastian', 'Perez Garcia', 'M', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(11, '1961/06/07', 'Maria Dolores', ' Leon Pizarro', 'F', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(12, '1999/06/13', 'Maria Del Carmen', 'Garcia Leon', 'F', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(13, '1998/12/23', 'Meritxell', 'Delgado Villena', 'F', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(14, '1892/12/04', 'Francisco', 'Franco Bahamondeh', 'M', now()); +INSERT INTO employees (emp_no, birth_date, first_name, last_name, gender, hire_date) +values(15, '1883/07/29', 'Benito Amilcare', 'Andrea Mussolini ', 'M', now()); + +-- salaries + + +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(1, 10000,'2020/01/10','2022/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(1, 14000,'2022/01/10','2028/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(2, 24000,'2020/01/10','2021/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(2, 48000,'2021/01/10','2024/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(3, 14000,'1980/01/10','1995/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(3, 20000,'1995/01/10','2024/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(4, 5000,'1981/01/10','1996/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(4, 7500,'1996/01/10','2005/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(5, 12000,'2005/01/10','2017/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(5, 18000,'2017/01/10','2025/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(6, 6000, '2021/02/10', '2028/02/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(7, 47000,'2007/01/10','2028/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(8, 45000,'1999/01/10','2028/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(9, 6000,'2020/02/10','2028/02/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(10, 15000,'1985/01/10','2001/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(11, 9000,'1982/01/10','1992/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(12, 5500, '2023/01/10','2040/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(13, 11000, '2022/02/10','2030/02/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(14, 50000 ,'1900/01/10','1950/01/10'); +INSERT INTO salaries (emp_no, salary, from_date, to_date) +values(15, 50000, '1915/01/10','1960/01/10'); + +--titles + +INSERT INTO titles (emp_no, title, from_date, to_date) +values(1, "TCAE", '2020/02/10','2024/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(2, "Ingenieria De Software", '2020/01/10','2024/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(3, "Jardineria", '2020/03/10','2024/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(4, "Limpiadora" , '2020/04/10','2024/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(5, "Farmaceutico", '2020/05/10','2024/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(6, "Chatarrero", '2021/01/10','2021/01/15'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(7, "Ingenieria Industrial", '2007/01/10','2012/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(8, "Guardia Civil", '1999/01/10','2001/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(9, "Camarero", '2019/02/10','2019/03/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(10, "Policia Local", '1983/01/10','1985/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(11, "Contabilidad", '1982/01/10','1986/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(12, "Cenador", '2022/9/10','2023/01/23'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(13, "Socorrista", '2018/02/10','2018/05/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(14, "Dictador", '1900/01/10','1902/01/10'); +INSERT INTO titles (emp_no, title, from_date, to_date) +values(15, "Militar", '1915/01/10','1917/01/10'); + +--departments + +INSERT INTO departments (dept_no, dept_name) +values("DP1", "departamento_1"); +INSERT INTO departments (dept_no, dept_name) +values("DP2", "departamento_2"); +INSERT INTO departments (dept_no, dept_name) +values("DP3", "departamento_3"); +INSERT INTO departments (dept_no, dept_name) +values("DP4", "departamento_4"); +INSERT INTO departments (dept_no, dept_name) +values("DP5", "departamento_5"); +INSERT INTO departments (dept_no, dept_name) +values("DP6", "departamento_6"); +INSERT INTO departments (dept_no, dept_name) +values("DP7", "departamento_7"); +INSERT INTO departments (dept_no, dept_name) +values("DP8", "departamento_8"); +INSERT INTO departments (dept_no, dept_name) +values("DP9", "departamento_9"); +INSERT INTO departments (dept_no, dept_name) +values("DP10", "departamento_10"); +INSERT INTO departments (dept_no, dept_name) +values("DP11", "departamento_11"); +INSERT INTO departments (dept_no, dept_name) +values("DP12", "departamento_12"); +INSERT INTO departments (dept_no, dept_name) +values("DP13", "departamento_13"); +INSERT INTO departments (dept_no, dept_name) +values("DP14", "departamento_14"); +INSERT INTO departments (dept_no, dept_name) +values("DP15", "departamento_15"); + +--dept_manager + +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP1", 1,'2022/01/10','2028/01/10'); +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP2", 2,'2022/01/10','2028/01/10'); +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP3", 3,'1995/01/10','2024/01/10'); +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP2", 3,'1997/01/10','1995/01/10'); +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP4", 4,'1996/01/10','2005/01/10'); +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP5", 4,'1994/01/10','1996/01/10'); +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP5", 5,'2017/01/10','2025/01/10'); +INSERT INTO dept_manager (dept_no, emp_no, from_date, to_date) +values("DP1", 5,'2015/01/10','2017/01/10'); + +--dept_emp + +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP6", 6,'2021/02/10', '2028/02/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP3", 6,'2019/02/10', '2021/02/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP7", 7,'2007/01/10','2028/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP6", 7,'2005/01/10','2007/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP8", 8,'1999/01/10','2028/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP7", 8,'1997/01/10','1999/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP9", 9,'2020/02/10','2028/02/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP8", 9,'2018/02/10','2020/02/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP10", 10,'1985/01/10','2001/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP9", 10,'1983/01/10','1985/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP11", 11,'1982/01/10','1992/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP12", 12,'2023/01/10','2040/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP13", 13,'2022/02/10','2030/02/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP14", 14,'1900/01/10','1950/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP15", 14,'1898/01/10','1900/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP15", 15,'1915/01/10','1960/01/10'); +INSERT INTO dept_emp (dept_no, emp_no, from_date, to_date) +values("DP14", 15,'1960/01/10','1962/01/10'); + +-- 1.4.2 UPDATE DATA------------------------------------------------- + +-- Change the name of an employee. +--To do this, generate a query that affects only a certain employee based on their name, surname and date of birth. +birth_date, first_name, last_name + +UPDATE employees SET first_name = "Juana" WHERE birth_date = "2004/07/08"; +UPDATE employees SET first_name = "Juana2" WHERE first_name = "Juana"; +UPDATE employees SET first_name = "Juana" WHERE last_name = "Benitez Lopez"; + +--Change the name of all departments. + +UPDATE departments SET dept_name = "departament_1" WHERE dept_no = 1; +UPDATE departments SET dept_name = "departament_2" WHERE dept_no = 2; +UPDATE departments SET dept_name = "departament_3" WHERE dept_no = 3; +UPDATE departments SET dept_name = "departament_4" WHERE dept_no = 4; +UPDATE departments SET dept_name = "departament_5" WHERE dept_no = 5; +UPDATE departments SET dept_name = "departament_6" WHERE dept_no = 6; +UPDATE departments SET dept_name = "departament_7" WHERE dept_no = 7; +UPDATE departments SET dept_name = "departament_8" WHERE dept_no = 8; +UPDATE departments SET dept_name = "departament_9" WHERE dept_no = 9; +UPDATE departments SET dept_name = "departament_10" WHERE dept_no = 10; +UPDATE departments SET dept_name = "departament_11" WHERE dept_no = 11; +UPDATE departments SET dept_name = "departament_12" WHERE dept_no = 12; +UPDATE departments SET dept_name = "departament_13" WHERE dept_no = 13; +UPDATE departments SET dept_name = "departament_14" WHERE dept_no = 14; +UPDATE departments SET dept_name = "departament_15" WHERE dept_no = 15; + +-- 1.4.3 GET DATA------------------------------------------------- + +--Select all employees with a salary greater than 20,000, +--you must list all employees data and the salary. + +SELECT em.*, sa.salary +FROM employees em LEFT JOIN salaries sa ON em.emp_no = sa.emp_no +WHERE sa.salary > 20000; + +--Select all employees with a salary below 10,000, +--you must list all employees data and the salary. + +SELECT em.*, sa.salary +FROM employees em LEFT JOIN salaries sa ON em.emp_no = sa.emp_no +WHERE sa.salary < 10000; + +--Select all employees who have a salary between 14,000 and 50,000, +--you must list all employees data and the salary. + +SELECT em.*, sa.salary +FROM employees em LEFT JOIN salaries sa ON em.emp_no = sa.emp_no +WHERE sa.salary BETWEEN 14000 and 50000; + +--Select the total number of employees. + +SELECT COUNT(emp_no) "Nº Empleados" FROM employees; + +--Select the total number of employees who have worked in more than one department. +SELECT ( +(SELECT COUNT(*) AS empleados +FROM ( SELECT dept_emp.emp_no + FROM dept_emp + GROUP BY dept_emp.emp_no + HAVING COUNT(dept_emp.emp_no) > 1 + ) AS t) ++ +(SELECT COUNT(*) AS manager +FROM ( SELECT dept_manager.emp_no + FROM dept_manager + GROUP BY dept_manager.emp_no + HAVING COUNT(dept_manager.emp_no) > 1 + ) AS t)); + + + +-- SELECT COUNT(*) +-- FROM ( +-- SELECT emp_no, COUNT(*) AS CNT +-- FROM dept_emp +-- GROUP BY emp_no +-- ) AS T +-- WHERE CNT > 1; +-------------------- +SELECT COUNT(*) AS em +FROM ( SELECT dept_emp.emp_no + FROM dept_emp ( + SELECT dept_manager.emp_no + FROM dept_manager + GROUP BY dept_manager.emp_no + HAVING COUNT(dept_manager.emp_no) > 1 + ) AS p; + GROUP BY dept_emp.emp_no + HAVING COUNT(dept_emp.emp_no) > 1 + ) AS t; + +--Select the titles of the year 2020 +SELECT * +FROM titles +WHERE from_date LIKE "2020%"; + +--Select the name of all employees with capital letters + +SELECT UPPER(first_name) +FROM employees; + +--Select the name, surname and name of the current department of each employee + +SELECT abc.first_name, abc.last_name, de.dept_name +FROM ( + SELECT first_name, last_name, dept_no FROM employees em + INNER JOIN dept_emp emp ON em.emp_no = emp.emp_no + ) AS abc +INNER JOIN departments de ON abc.dept_no= de.dept_no; + +--Select the name, surname and number of times the employee has worked as a manager + +SELECT employees.first_name, employees.last_name, COUNT(employees.emp_no)"Nº de veces trabajado" +FROM employees +INNER JOIN dept_manager ON dept_manager.emp_no = employees.emp_no +GROUP BY employees.emp_no; + +--Select the name of employees without any being repeated + +SELECT DISTINCT(first_name) +FROM employees; + +-- 1.4.4 DELETE DATA------------------------------------------------- + +--Delete all employees with a salary greater than 20,000 + +-- DELETE +-- FROM ( +-- SELECT * FROM employees em +-- LEFT JOIN salaries sa ON sa.emp_no = em.emp_no +-- ) AS Q +-- WHERE sa.salary > 20000; + +DELETE employees FROM employees +LEFT JOIN salaries ON salaries.emp_no = employees.emp_no +WHERE salaries.salary > 20000; + +--Remove the department that has the most employees. + +DELETE departments +FROM departments +WHERE dept_no = ( + SELECT dept_no FROM dept_emp + GROUP BY dept_no + ORDER BY COUNT(dept_no) desc + LIMIT 1); + +--------------------------------------------- + +--CREATE DATABASE +DROP DATABASE IF EXISTS cinema; +CREATE DATABASE IF NOT EXISTS cinema; +USE cinema; + +CREATE TABLE clientes ( + id_cliente INT NOT NULL AUTO_INCREMENT, + nombre_cliente VARCHAR(20) NOT NULL, + PRIMARY KEY (id_cliente) +); + +CREATE TABLE tarjetas_socio ( + id_tarjeta INT NOT NULL AUTO_INCREMENT, + id_cliente INT NOT NULL, + nombre_bono VARCHAR(20) NOT NULL, + PRIMARY KEY (id_tarjeta), + FOREIGN KEY (id_cliente) REFERENCES clientes (id_cliente) ON DELETE CASCADE +); + +CREATE TABLE salas ( + id_sala INT NOT NULL AUTO_INCREMENT, + nombre_sala VARCHAR(20) NOT NULL, + PRIMARY KEY (id_sala) +); + +CREATE TABLE peliculas ( + id_pelicula INT NOT NULL AUTO_INCREMENT, + id_sala INT NOT NULL, + id_cliente INT NOT NULL, + nombre_pelicula VARCHAR(20) NOT NULL, + PRIMARY KEY (id_pelicula), + FOREIGN KEY (id_sala) REFERENCES salas (id_sala) ON DELETE CASCADE, + FOREIGN KEY (id_cliente) REFERENCES clientes (id_cliente) ON DELETE CASCADE +); + +CREATE TABLE producto_comida ( + id_producto_comida INT NOT NULL AUTO_INCREMENT, + id_cliente INT NOT NULL, + precio FLOAT(5) NOT NULL, + PRIMARY KEY (id_producto_comida) +); + +CREATE TABLE comprar_comida ( + id_producto_comida INT NOT NULL AUTO_INCREMENT, + id_cliente INT NOT NULL, + PRIMARY KEY (id_cliente), + UNIQUE KEY (id_producto_comida), + FOREIGN KEY (id_cliente) REFERENCES clientes (id_cliente) ON DELETE CASCADE, + FOREIGN KEY (id_producto_comida) REFERENCES producto_comida (id_producto_comida) ON DELETE CASCADE +); + + +-- ONE TO ONE tarjetas_socio con clientes +-- ONE TO MANY salas con peliculas +-- MANY TO MANY producto_comida con clientes + + +