You are on page 1of 4

CREATE DATABASE peliculas;

USE peliculas;

CREATE TABLE country(


country_id SMALLINT(5),
country VARCHAR(50),
last_update TIMESTAMP,
PRIMARY KEY (country_id)
);

CREATE TABLE actor(


actor_id SMALLINT(5),
first_name VARCHAR(45),
last_name VARCHAR(45),
last_update TIMESTAMP,
PRIMARY KEY(actor_id)
);

CREATE TABLE city(


city_id SMALLINT(5),
city_name VARCHAR(50),
country_id SMALLINT(5),
last_update TIMESTAMP,
PRIMARY KEY (city_id),
FOREIGN KEY(country_id) REFERENCES country(country_id)
);

CREATE TABLE film_text(


film_id SMALLINT(6),
tittle VARCHAR(255),
descriptionn TEXT,
PRIMARY KEY (film_id)
);

CREATE TABLE languagee(


languagee_id TINYINT(3),
NAME CHAR (20),
last_update TIMESTAMP,
PRIMARY KEY (languagee_id)
);

CREATE TABLE film(


film_id SMALLINT (5),
tittle VARCHAR(255),
descriptionn TEXT,
release_year YEAR(4),
languagee_id TINYINT(3),
rental_duration TINYINT(3),
rental_rate DECIMAL(4,2),
lengthh SMALLINT(5),
replacement_cost DECIMAL(5,2),
rating INT(2),
special_features VARCHAR(100),
last_update TIMESTAMP,
PRIMARY KEY (film_id),
FOREIGN KEY(languagee_id) REFERENCES languagee(languagee_id)
);

CREATE TABLE film_actor(


actor_id SMALLINT(5),
film_id SMALLINT(5),
last_update TIMESTAMP,
-- primary key (film_id),
FOREIGN KEY(actor_id) REFERENCES actor(actor_id),
FOREIGN KEY (film_id) REFERENCES film(film_id)
);

CREATE TABLE category(


category_id TINYINT(3),
NAME VARCHAR(25),
last_update TIMESTAMP,
PRIMARY KEY (category_id)
);

CREATE TABLE film_category(


film_id SMALLINT(5),
category_id TINYINT(3),
last_update TIMESTAMP,
FOREIGN KEY(film_id) REFERENCES film(film_id),
FOREIGN KEY (category_id) REFERENCES category(category_id)
);

CREATE TABLE address(


address_id SMALLINT(5),
address1 VARCHAR(50),
address2 VARCHAR(50),
district VARCHAR(20),
city_id SMALLINT(5),
postal_code VARCHAR(10),
last_update TIMESTAMP,
phone VARCHAR (50),
PRIMARY KEY(address_id),
FOREIGN KEY (city_id) REFERENCES city(city_id)
);

CREATE TABLE inventory(


inventory_id MEDIUMINT(8),
last_update TIMESTAMP,
PRIMARY KEY (inventory_id)
);

CREATE TABLE store(


store_id TINYINT(3),
last_update TIMESTAMP,
PRIMARY KEY (store_id)
);

CREATE TABLE staff(


staff_id TINYINT(3),
first_name VARCHAR(45),
last_name VARCHAR(45),
picture BLOB,
email VARCHAR(50),
activee TINYINT(1),
username VARCHAR(16),
password_ VARCHAR(40),
last_update TIMESTAMP,
PRIMARY KEY (staff_id)
);

CREATE TABLE customer(


customer_id SMALLINT(5),
first_name VARCHAR(45),
last_name VARCHAR(45),
email VARCHAR(45),
activee TINYINT(1),
create_data DATETIME,
last_update TIMESTAMP,
PRIMARY KEY (customer_id)
);

CREATE TABLE payment (


payment_id SMALLINT(5),
rental_id INT(11),
amountt DECIMAL(5,2),
payment_date DATETIME,
last_update TIMESTAMP,
PRIMARY KEY (payment_id)
);

CREATE TABLE rental (


rental_id INT(11),
rental_date DATETIME,
return_date DATETIME,
last_update TIMESTAMP,
PRIMARY KEY (rental_id)
);

-- INVENTARY

ALTER TABLE inventory


ADD COLUMN film_id SMALLINT(5),
ADD CONSTRAINT fs_relacion FOREIGN KEY (film_id)
REFERENCES film(film_id);

ALTER TABLE inventory


ADD COLUMN store_id TINYINT(3),
ADD CONSTRAINT fq_relacion FOREIGN KEY (store_id)
REFERENCES store(store_id);
-- STORE

ALTER TABLE store


ADD COLUMN address_id SMALLINT(5),
ADD CONSTRAINT fe_relacion FOREIGN KEY (address_id)
REFERENCES address(address_id);
ALTER TABLE store
ADD COLUMN staff_id TINYINT(3),
ADD CONSTRAINT fw_relacion FOREIGN KEY (staff_id)
REFERENCES staff(staff_id);
-- PAYMENT
ALTER TABLE payment
ADD COLUMN customer_id SMALLINT(5),
ADD CONSTRAINT fr_relacion FOREIGN KEY (customer_id)
REFERENCES customer(customer_id);
ALTER TABLE payment
ADD COLUMN staff_id TINYINT(3),
ADD CONSTRAINT ft_relacion FOREIGN KEY (staff_id)
REFERENCES staff(staff_id);

-- RENTAL
ALTER TABLE rental
ADD COLUMN customer_id SMALLINT(5),
ADD CONSTRAINT fy_relacion FOREIGN KEY (customer_id)
REFERENCES customer(customer_id );
ALTER TABLE rental
ADD COLUMN staff_id TINYINT(3),
ADD CONSTRAINT fu_relacion FOREIGN KEY (staff_id)
REFERENCES staff(staff_id);
ALTER TABLE rental
ADD COLUMN inventory_id MEDIUMINT(8),
ADD CONSTRAINT fi_relacion FOREIGN KEY (inventory_id)
REFERENCES inventory(inventory_id);

--
-- CUSTOMER
ALTER TABLE customer
ADD COLUMN address_id SMALLINT(5),
ADD CONSTRAINT fo_relacion FOREIGN KEY (address_id)
REFERENCES address(address_id);
ALTER TABLE customer
ADD COLUMN store_id TINYINT(3),
ADD CONSTRAINT fp_relacion FOREIGN KEY (store_id)
REFERENCES store(store_id);
--
-- STAFF
ALTER TABLE staff
ADD COLUMN address_id SMALLINT(5),
ADD CONSTRAINT fd_relacion FOREIGN KEY (address_id)
REFERENCES address(address_id);
ALTER TABLE staff
ADD COLUMN store_id TINYINT(3),
ADD CONSTRAINT fa_relacion FOREIGN KEY (store_id)
REFERENCES store(store_id);
--
--

You might also like