Skip to content
Snippets Groups Projects
Commit ca9ae6b0 authored by florian.delbe.etu's avatar florian.delbe.etu
Browse files

doc SQL

parent 423ec4c0
Branches master
No related tags found
No related merge requests found
SQL.md 0 → 100644
# TABLES ET REQUETES DU PROJET
1. [INGREDIENT](#ingredient)
2. [PATES A PIZZA](#pate)
3. [PIZZA](#pizza)
4. [COMMANDE](#commande)
## INFORMATION IMPORTANTES
dans ce texte, tous les ??? sont les valeur que cous donnez a la base de donnée
et tout les !!! sont les nom de colonnes dans la table sql
## INGREDIENT
### TABLE
id int
nom text
prix float
clé primaire : id
clé étrangère : X
### REQUETE
Création de la table
```sql
CREATE TABLE ingredient(id INT PRIMARY KEY, nom TEXT, prix FLOAT);
```
Sélectionner tout les ingédients
```sql
SELECT id,nom,prix FROM ingredient;
```
Sélectionner un ingredient (dans le programme on le fait principalement avec l'id)
```sql
SELECT id,nom,prix FROM ingredient WHERE id= ???;
```
ajouter un ingredient
```sql
INSERT INTO ingredient (id, nom, prix) VALUES (???, ???, ???);
```
retirer un ingredient
```sql
DELETE FROM ingredient WHERE id = ???;
```
modifier un ingredient
```sql
UPDATE ingredient SET !!! = ??? WHERE id=idINGREDIENT;
```
## PATE
### TABLE
id INT
nom TEXT
clé primaire: id
clé étrangère : X
### REQUETE
création de la table
```sql
CREATE TABLE pate (id INT PRIMARY KEY, nom TEXT UNIQUE);
```
sélectionner toutes les pates
```sql
SELECT nom FROM pate;
```
Sélectionner une pate par son id
```sql
SELECT nom FROM pate WHERE id = ?;
```
Ajouter d'une pate
```sql
INSERT INTO pate (id, nom) VALUES (???, ???);
```
Supprimer une pate
```sql
DELETE FROM pate WHERE id = ???;
```
Modifier une pate
```sql
UPDATE pate SET !!!=??? WHERE id=idPATE
```
## PIZZA
le stockage des pizzas est divisé en 2 tables:
la table pizza qui contient l'id ,le prix ,le nom ,la pate de la pizza
et la table pizza_ingredients qui contient un couple id_pizza et id_ingredient
### TABLE
id INT
nom TEXT
pate_id INT
prix FLOAT
clé primaire: id
clé étrangère : pate_id sur la clé primaire de pate
### REQUETE
Création de la table
```sql
CREATE TABLE pizza (id INT PRIMARY KEY, nom TEXT UNIQUE, pate_id INT, prix FLOAT, FOREIGN KEY (pate_id) REFERENCES pate(id));
```
Sélectionner toutes les pizza
```sql
SELECT id, nom, pate_id, prix FROM pizza;
```
Sélectionner une pizza
```sql
SELECT id, nom, pate_id, prix FROM pizza WHERE id=???;
```
Ajouter une pizza
```sql
INSERT INTO pizza (id, nom, pate_id, prix) VALUES (???, ???, ???, ???);
```
Supprimer une pizza
```sql
DELETE FROM pizza WHERE id = ?;
```
Modifier une pizza;
```sql
UPDATE pizza SET !!!=??? WHERE id=idPIZZA
```
## PIZZA INGREDIENT
### TABLE
id_pizza INT
id_ingredient INT
\
clé primaire: id_pizza,id_ingredient\
\
clé étrangère : \
id_pizza sur la clé primaire de pizza\
id_ingredient sur la clé primaire de ingredient
### REQUETE
Création de la table
```sql
CREATE TABLE pizza_ingredient (id_pizza INT, id_ingredient INT, PRIMARY KEY (id_pizza, id_ingredient), FOREIGN KEY (id_pizza) REFERENCES pizza(id) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY (id_ingredient) REFERENCES ingredient(id) ON UPDATE CASCADE ON DELETE CASCADE);
```
Sélectionner tout les couples
```sql
SELECT id_pizza,id_ingredient FROM pizza_ingredient ;
```
Sélectionner un couple particulier( peu d'intéret )
```sql
SELECT id_pizza,id_ingredient FROM pizza_ingredient WHERE id_pizza = ??? AND id_ingredient = ???;
```
Ajouter un élément (ce qui revient a ajouter un ingrédient sur une pizza)
```sql
INSERT INTO pizza_ingredient(id_pizza,id_ingredient) VALUES (???,???);
```
Supprimer un élément (ce qui revient a enlever un ingrédient d'une pizza)
```sql
DELETE FROM pizza_ingredient WHERE id_pizza = ? AND ingredient_id = ?;
```
Modifier un élément (remplacer un ingrédient par un autre )
```sql
UPDATE pizza_ingrédient SET !!!=??? WHERE id_pizza=idPIZZA AND id_ingredient=idINGREDIENT ;
```
## COMMANDE
tout comme pizza ,la table commande est divisé en 2: \
une table commande qui contient l'id de la commande ,le prix ,le détenteur de la commande ,la date de la commande\
une table commande_pizza qui contient un couple id commande et id d'une pizza de la commande\
### TABLE
id INT
prix FLOAT
détenteur TEXT
date DATE
### REQUETE
Création de la table
```sql
CREATE TABLE commande (id INT PRIMARY KEY, utilisateur TEXT, datecommande DATE, prix REAL);
```
Sélectionner toutes les commandes
```sql
SELECT id, utilisateur ,datecommande,prix FROM commande;
```
Sélectionner une commande en particuler
```sql
SELECT id, utilisateur ,datecommande,prix FROM commande WHERE id= ???;
```
Ajouter une commande
```sql
INSERT INTO commande (id, utilisateur, datecommande, prix) VALUES (???, ???, ???, ???);
```
Supprimer une commande
```sql
DELETE FROM commande WHERE id = ?;
```
Modifier une commande
```sql
UPDATE commande SET !!! = ??? WHERE id = idCOMMANDE;
```
## COMMANDE_PIZZA
### TABLE
id_commande INT
id_pizza INT
\
clé primaire: id_commande,id_pizza\
clé étrangère: \
id_commande sur la colonne id de commande\
id_pizza sur ma colonne id de pizza
### REQUETE
Création de la table
```sql
CREATE TABLE commande_pizza (id_commande INT, id_pizza INT, FOREIGN KEY (id_commande) REFERENCES commande(id) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY (id_pizza) REFERENCES pizza(id) ON UPDATE CASCADE ON DELETE CASCADE);
```
Sélectionner tous les éléments :
```sql
SELECT id_commande,id_pizza FROM commande_pizza;
```
Sélectionner un élément de la table
```sql
SELECT id_commande,id_pizza FROM commande_pizza;
```
ajouter une élément (ce qui revient a ajouter une pizza dans une commande)
```sql
INSERT INTO commande_pizza (id_commande, id_pizza) VALUES (???, ???);
```
supprimer un élément (ce qui revient a enlever une pizza d'une commande)
```sql
DELETE FROM commande_pizza WHERE id_commande = ??? AND id_pizza = ???;
```
modifier un élément (ce qui revient a remplacer une pizza dans une commande)
```sql
UPDATE commande_pizza SET !!!=??? WHERE id_pizza=idPIZZA AND id_commande=idCOMMANDE ;
```
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment