Files
LesRecettesDePapis/basededonnee/codemysql/basedonneee.sql

157 lines
4.1 KiB
MySQL
Raw Normal View History

2026-03-30 16:10:26 +02:00
-- 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);