-- 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);