157 lines
4.1 KiB
MySQL
157 lines
4.1 KiB
MySQL
|
|
|
||
|
|
-- MySQL dump 10.13 Distrib 5.5.27, for Win64 (x86)
|
||
|
|
--
|
||
|
|
-- Host: localhost Database: cinema
|
||
|
|
-- ------------------------------------------------------
|
||
|
|
-- Server version 5.5.27
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
-- note pour l'execution, 'sur mon ordinateur personnel' dans le terminal
|
||
|
|
-- sudo mysql --local-infile=1 -p < codemysql/basedonneee.sql (obliger de sudo pour que ca marche sur mon ordi perso)
|
||
|
|
-- et aussi sudo mysql -p pour juste lancer
|
||
|
|
-- comment faire tourner mon code sur workbench
|
||
|
|
-- j'ai modifier les chemins des loads data
|
||
|
|
-- pour utiliser un chemin relatif* (car chemin relatif ne marche pas dans
|
||
|
|
-- workbench, mais fonctionne dans les fichiers de script. (il doit y avoir une option pour sur WB)
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
DROP DATABASE IF EXISTS siterecette;
|
||
|
|
CREATE DATABASE siterecette;
|
||
|
|
|
||
|
|
DROP USER IF EXISTS 'admin'@'localhost';
|
||
|
|
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'adminpass123';
|
||
|
|
GRANT ALL PRIVILEGES ON siterecette.* TO 'admin'@'localhost';
|
||
|
|
USE siterecette;
|
||
|
|
|
||
|
|
--
|
||
|
|
-- Table structure for table acteur
|
||
|
|
--
|
||
|
|
|
||
|
|
DROP TABLE IF EXISTS Recette;
|
||
|
|
CREATE TABLE Recette (
|
||
|
|
num_recette INT NOT NULL,
|
||
|
|
titre_recette VARCHAR(60) NOT NULL,
|
||
|
|
slug VARCHAR(200) NOT NULL,
|
||
|
|
description_recette VARCHAR(1000) NOT NULL,
|
||
|
|
photo VARCHAR(200) NOT NULL,
|
||
|
|
publication_date DATE NOT NULL,
|
||
|
|
temps_de_preparation INT NOT NULL
|
||
|
|
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
--
|
||
|
|
-- Table structure for table realisateur
|
||
|
|
--
|
||
|
|
|
||
|
|
DROP TABLE IF EXISTS Tag;
|
||
|
|
CREATE TABLE Tag (
|
||
|
|
num_tag INT NOT NULL,
|
||
|
|
nom_tag VARCHAR(30) NOT NULL
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||
|
|
|
||
|
|
|
||
|
|
--
|
||
|
|
-- Table structure for table salle
|
||
|
|
--
|
||
|
|
|
||
|
|
DROP TABLE IF EXISTS Ingredient;
|
||
|
|
CREATE TABLE Ingredient (
|
||
|
|
num_ingredient INT NOT NULL,
|
||
|
|
nom_ingredient INT NOT NULL
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||
|
|
|
||
|
|
|
||
|
|
--
|
||
|
|
-- Table structure for table film
|
||
|
|
--
|
||
|
|
|
||
|
|
DROP TABLE IF EXISTS Listeingredient;
|
||
|
|
CREATE TABLE Listeingredient (
|
||
|
|
num_recette INT NOT NULL,
|
||
|
|
num_ingredient INT NOT NULL
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
--
|
||
|
|
-- Table structure for table projection
|
||
|
|
--
|
||
|
|
|
||
|
|
DROP TABLE IF EXISTS Referencetag;
|
||
|
|
CREATE TABLE Referencetag (
|
||
|
|
num_recette INT NOT NULL,
|
||
|
|
num_tag INT NOT NULL
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||
|
|
|
||
|
|
DROP TABLE IF EXISTS User;
|
||
|
|
CREATE TABLE User (
|
||
|
|
num_user INT NOT NULL,
|
||
|
|
username VARCHAR(20) NOT NULL,
|
||
|
|
userpassword VARCHAR(60) NOT NULL
|
||
|
|
|
||
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
--
|
||
|
|
-- CONTRAINTES
|
||
|
|
--
|
||
|
|
-- en utilisant les 'alter table' sinon on peut directement les specifier dans les create table
|
||
|
|
ALTER TABLE Recette
|
||
|
|
ADD CONSTRAINT pk_recette PRIMARY KEY (num_recette);
|
||
|
|
ALTER TABLE Ingredient
|
||
|
|
ADD CONSTRAINT pk_ingredient PRIMARY KEY (num_ingredient);
|
||
|
|
ALTER TABLE Tag
|
||
|
|
ADD CONSTRAINT pk_tag PRIMARY KEY (num_tag);
|
||
|
|
|
||
|
|
ALTER TABLE User
|
||
|
|
ADD CONSTRAINT pk_user PRIMARY KEY (num_user);
|
||
|
|
|
||
|
|
|
||
|
|
ALTER TABLE Listeingredient
|
||
|
|
ADD CONSTRAINT fk_numrecette_ingredient FOREIGN KEY (num_recette) REFERENCES Recette (num_recette),
|
||
|
|
ADD CONSTRAINT fk_recette_numingredient FOREIGN KEY (num_ingredient) REFERENCES Ingredient (num_ingredient);
|
||
|
|
|
||
|
|
ALTER TABLE Referencetag
|
||
|
|
ADD CONSTRAINT fk_numrecette_tag FOREIGN KEY (num_recette) REFERENCES Recette (num_recette),
|
||
|
|
ADD CONSTRAINT fk_recette_numtag FOREIGN KEY (num_tag) REFERENCES Tag (num_tag);
|
||
|
|
|
||
|
|
-- si besoin exemple de chargement csv
|
||
|
|
|
||
|
|
-- LOAD DATA LOCAL INFILE 'nom.csv'
|
||
|
|
-- INTO TABLE nom
|
||
|
|
-- FIELDS TERMINATED BY ','
|
||
|
|
-- ENCLOSED BY '"'
|
||
|
|
-- LINES TERMINATED BY '\n'
|
||
|
|
-- IGNORE 1 ROWS;
|
||
|
|
-- les chemin ./filename.csv ne marche que dans le terminal avec le cli mysql via la commande $
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
-- select * from column;
|
||
|
|
|
||
|
|
INSERT INTO Recette (num_recette,titre_recette,slug,description_recette,photo,publication_date,temps_de_preparation)
|
||
|
|
values(1,"nomdrecette","slugdpage","descriptiondrecette","urldephoto",'2023-12-31',500),
|
||
|
|
(2,"nomdrecette","slugdpage","descriptiondrecette","urldephoto",'2023-12-31',500),
|
||
|
|
(3,"nomdrecette","slugdpage","descriptiondrecette","urldephoto",'2023-12-31',500);
|
||
|
|
|
||
|
|
|
||
|
|
-- select * from Recette;
|
||
|
|
|
||
|
|
-- INSERT INTO Tag (num_tag,nom_tag)
|
||
|
|
-- values(1,"nomdtag");
|
||
|
|
|
||
|
|
|
||
|
|
-- INSERT INTO Referencetag(num_recette, num_tag)
|
||
|
|
-- values(1,1);
|
||
|
|
|
||
|
|
-- INSERT INTO Ingredient(num_ingredient,nom_ingredient)
|
||
|
|
-- values(2,2);
|
||
|
|
|
||
|
|
-- INSERT INTO Listeingredient(num_recette,num_ingredient)
|
||
|
|
-- values(1,2);
|