diff --git a/.vscode/ltex.dictionary.fr.txt b/.vscode/ltex.dictionary.fr.txt
new file mode 100644
index 0000000..d2e75cf
--- /dev/null
+++ b/.vscode/ltex.dictionary.fr.txt
@@ -0,0 +1 @@
+SGBD
diff --git a/src/cours/CIEL1/07-bases-de-donnees/bases-de-donnees.md b/src/cours/CIEL1/07-bases-de-donnees/bases-de-donnees.md
index f210215..b286880 100644
--- a/src/cours/CIEL1/07-bases-de-donnees/bases-de-donnees.md
+++ b/src/cours/CIEL1/07-bases-de-donnees/bases-de-donnees.md
@@ -47,4 +47,8 @@
## TD
- Requêtes (2 séances)
-- Analyse de schéma, amélioration de schéma, création de petits schémas
\ No newline at end of file
+- Analyse de schéma, amélioration de schéma, création de petits schémas
+
+
+# Ressources
+[Merise](https://memento-dev.fr/docs/merise/mld)
\ No newline at end of file
diff --git a/src/cours/CIEL1/07-bases-de-donnees/fiche-sequence.md b/src/cours/CIEL1/07-bases-de-donnees/fiche-sequence.md
new file mode 100644
index 0000000..8333be4
--- /dev/null
+++ b/src/cours/CIEL1/07-bases-de-donnees/fiche-sequence.md
@@ -0,0 +1,46 @@
+# Séquence 07 - Bases de données
+
+## Objectif
+Découvrir la conception et le requêtage de bases de données.
+
+## Pré-requis
+Ligne de commande sous Linux
+
+## Scénario pédagogique
+### Démarche
+
+Modélisation d'une base de données de bout en bout
+
+### Organisation
+#### S1 -
+- **Apport de connaissances** : Dictionnaire de données + MCD + MLD
+- **Activité** : Modélisation d'une base de données (MCD et MPD)
+- **Structuration de connaissances** : MPD et Langage + création
+- **Évaluation**
+ - C04 :
+ - Les spécifications du cahier des charges sont extraites
+ - C08 :
+ - Le travail est effectué selon les attentes exprimées de temps, de quantité ou de qualité
+
+#### S2 -
+- **Apport de connaissances** : Droits et création
+- **Activité** : Création + droits + requêtes
+- **Structuration de connaissances** : Requêtage simple
+- **Évaluation**
+ - C0
+ - C0
+
+#### S3 -
+- **Apport de connaissances** : -
+- **Activité** : Remédiation
+- **Structuration de connaissances** : Requêtage avancé (jointures)
+- **Évaluation**
+ - C0
+ - C0
+
+### Évaluation
+
+| Description | Formative | Sommative | Semaine |
+| ----------- | --------- | --------- | ------- |
+| Compétences | x | | 1 2 3 |
+| Devoir | | x | 4 |
\ No newline at end of file
diff --git a/src/cours/CIEL1/07-bases-de-donnees/loueur_mcd.loo b/src/cours/CIEL1/07-bases-de-donnees/loueur_mcd.loo
new file mode 100644
index 0000000..d45a909
Binary files /dev/null and b/src/cours/CIEL1/07-bases-de-donnees/loueur_mcd.loo differ
diff --git a/src/slides/B1/db/01_modèle_de_données.md b/src/slides/B1/db/01_modèle_de_données.md
new file mode 100644
index 0000000..03dadb3
--- /dev/null
+++ b/src/slides/B1/db/01_modèle_de_données.md
@@ -0,0 +1,451 @@
+---
+marp: true
+theme: catppuccin
+paginate: true
+size: 4:3
+transition: coverflow
+footer: ''
+math: katex
+lang: "fr"
+---
+
+
+
+# Bases de données - Modélisation
+
+---
+
+## Modélisation
+
+Qu'est-ce que la modélisation ?
+- **Analyse** et **conception** des informations
+- **Représentation** de la structure des informations
+
+Objectif :
+- Identifier les **éléments** (entités) logiques
+- Identifier et tracer les **dépendances** (relations) logiques entre les entités
+
+C'est une représentation **abstraite** : on ignore les données individuelles elles-mêmes au profit de la structure
+
+---
+
+### Méthode Merise
+
+- Méthodologie de modélisation française assez ancienne (années 70/80)
+- Mais éprouvée et toujours d'actualité
+- Propose plusieurs étapes sous forme de schémas
+ - Dictionnaire de données
+ - **MCD** : Modèle Conceptuel de Données
+ - **MLD** : Modèle Logique de Données
+ - **MPD** : Modèle Physique de Données
+---
+
+#### Dictionnaire de données
+
+- Document utilisé pour lister les informations à stocker en base
+- Obtenu suite à l'analyse des besoins du client
+- Simple et compréhensible de tout le monde
+
+---
+
+#### MCD - Modèle Conceptuel de Données
+
+- Schéma utilisé pour représenter les données extraites du dictionnaire
+- Regroupe par **entités** et montre les **associations** (relations)
+- Reste compréhensible de tout le monde (pas de détails techniques)
+- Important car la suite dépend de lui
+
+---
+
+#### MLD - Modèle Logique de Données
+
+- Schéma qui découle directement du MCD
+- Ajoute des détails techniques :
+ - Découpage en **tables** et **colonnes**
+ - **Clés**
+ - **Tables de jointure**
+
+---
+
+#### MPD - Modèle Physique de Données
+
+- Schéma qui représente les données de manière physique
+ - Tient compte des spécificités du **SGBD**
+ - Ajoute les **types** de données, les **index**, les **contraintes**...
+
+- SGBD = Système de Gestion de Bases de Données
+ - Logiciel dédié à la gestion et manipulation des données
+
+---
+
+## Merise en détails
+
+---
+
+
+
+
+### Demande du client
+
+Une loueur de véhicules souhaite construire une base de données pour
+- Enregistrer les véhicules que ses client peuvent louer et les dates de location.
+- Il veut pouvoir les joindre facilement, donc il voudra leurs noms et prénoms, ainsi qu'un numéro de téléphone.
+- La loi l'oblige également à stocker le numéro du permis de conduire des conducteurs et conductrices, en cas d'infraction du code de la route.
+- Par ailleurs, il souhaite savoir quel est le kilométrage des véhicules en sa possession, et leur prix journalier
+- Pour finir, il veut stocker certaines informations sur les modèles qu'il a en stock pour aider les clients à choisir un véhicule (marque et modèle, nombre de places, type de véhicule, volume pour les utilitaires...)
+
+---
+
+### Le dictionnaire de données
+
+- Document qui contient les informations sur les données à stocker
+- Tiré des informations données par le client
+- À valider avec le client -> il doit le comprendre
+- Informations du dictionnaire de données
+ - Nom
+ - Format
+ - Longueur
+ - Contraintes
+ - Document (le "groupe" de données)
+
+---
+
+#### Les formats
+
+- **Alphabétique**
+ - A-Z uniquement
+- **Alphanumérique**
+ - A-Z et 0-9, éventuellement caractères spéciaux
+- **Numérique**
+ - Nombres entiers, flottants etc..
+- **Date**
+- **Logique**
+ - Vrai/Faux
+
+---
+
+#### Les contraintes
+
+Ce sont les contraintes du client
+- Données **obligatoires**
+- Données **uniques**
+- Valeurs par défaut
+- Etc.
+
+---
+
+
+
+#### Dans notre exemple
+
+**Document** : Conducteur
+
+| Nom | Format | Longueur | Contrainte |
+| ---------------------------- | -------------- | -------- | ------------------- |
+| Nom | Alphabétique | 30 | Obligatoire |
+| Prénom | Alphabétique | 30 | Obligatoire |
+| Numéro de téléphone | Alphanumérique | 20 | Obligatoire |
+| Numéro de permis de conduire | Alphanumérique | 50 | Obligatoire, Unique |
+
+---
+
+**Document** : Véhicule
+
+| Nom | Format | Longueur | Contrainte |
+| --------------- | -------------- | -------- | ------------------- |
+| Immatriculation | Alphanumérique | 30 | Obligatoire, Unique |
+| Kilométrage | Numérique | - | Obligatoire |
+| Prix journalier | Numérique | - | Obligatoire |
+
+---
+
+**Document** : Modèle
+
+| Nom | Format | Longueur | Contrainte |
+| ---------------- | -------------- | -------- | -------------------------------- |
+| Marque | Alphanumérique | 30 | Obligatoire |
+| Modèle | Alphanumérique | 30 | Obligatoire |
+| Nombre de places | Numérique | - | Obligatoire |
+| Volume | Numérique | - | Obligatoire pour les utilitaires |
+| Type de véhicule | Alphabétique | 30 | |
+
+L'association marque-modèle est unique (pour simplifier l'exemple)
+
+---
+
+**Document** : Location
+
+| Nom | Format | Longueur | Contrainte |
+| ------------- | ------ | -------- | ----------- |
+| Date de début | Date | - | Obligatoire |
+| Date de fin | Date | - | Obligatoire |
+
+---
+
+### MCD - Le Modèle Conceptuel de Données
+
+- Représenter les données récupérées dans le dictionnaire
+- Doit rester compréhensible par le client
+
+---
+
+#### Le diagramme
+
+
+
+---
+
+#### Vocabulaire
+
+- Le diagramme possède des **entités**
+ - carrés jaunes
+- qui sont composées d'**attributs**
+ - certains attributs peuvent être **uniques**
+ - écrit en gras
+ - leur valeur ne peut se retrouver qu'une seule fois
+ - certains attributs peuvent être **discriminants**
+ - écrit en gras et souligné
+ - ils **identifient** de manière unique une occurrence
+
+---
+
+- Le diagramme possède des **associations**
+ - Bulle ovale
+ - Représentée par un **verbe à l'infinitif**
+- Les associations ont une **cardinalité**
+ - Nombre d'occurrences d'une entité par rapport à une autre
+
+---
+
+#### Les cardinalités
+
+- Élément essentiel du MCD
+- Définit le nombre d'occurrences d'une entité par rapport à une autre (l'entité est associée à X occurrences)
+- Cardinalité est définie par deux valeurs :
+ - **Minimum** d'occurrences
+ - **Maximum** d'occurrences
+ - On l'écrit sous forme : **Min,Max**
+
+---
+
+- Valeurs courantes :
+ - **0** : signifie "0 occurrence"
+ - **1** : signifie "1 occurrence"
+ - **N** : signifie "n'importe quel nombre d'occurrences"
+- Cardinalités courantes : (l'entité est associée à)
+ - **0,1** : Soit aucune soit une occurrence
+ - **1,1** : Exactement 1 occurrence
+ - **0,n** : N'importe quel nombre d'occurrences
+ - **1,n** : Au moins une occurrence
+
+---
+
+#### Associations réflexives
+
+- Certaines entités peuvent être reliées à elles-mêmes par une association
+ - Ce sont des **associations réflexives**
+- **Exemple** : Genres de livres
+ - Un genre peut regouper des sous-genres plus précis
+ - On crée une association réflexive entre l'entité "Genre" et elle-même
+ - Crée une hiérarchie de genres
+
+---
+
+#### Héritage
+
+**L'héritage** va nous permettre de rassembler des propriétés identiques dans une entité commune (appelée **entitée générique**) et créer des entités plus spécialisées appelées **entitées spécialisées**
+
+
+
+---
+
+#### Dans notre exemple
+
+
+
+---
+
+
+#### Choix du discriminant
+
+- Attributs peuvent identifier de manière unique un enregistrement
+ - **Discriminant naturel**
+ - Attribut appartenant à l'objet qui identifie de manière unique
+ - ex: numéro de sécurité sociale
+ - **Discriminant synthétique**
+ - Attribut créé de toutes pièces pour identifier l'objet
+
+- Préférer un discriminant synthétique
+ - Facilite la maintenance
+ - Facilite les changements plus tard
+ - Réduit le nombre de modifications quand on change le discriminant
+
+---
+
+
+
+---
+
+### MLD - Le Modèle Logique de Données
+
+- Le MLD est la suite logique et directe du MCD
+- Il en découle directement par l'application de règles simples
+- Transforme le MCD en modèle qui peut être implémenté dans un SGBD
+- Ajoute des détails techniques
+
+---
+
+#### Convertir les entités et attributs
+
+- Les **entités** deviennent des **tables**
+- Les **attributs discriminants** (gras soulignés) deviennent des **clés primaires**
+ - Clé primaire : donnée (composée d'une ou plusieurs colonnes) qui permet d'identifier de manière unique un enregistrement dans une table
+- Les **attributs uniques** (gras) deviennent des **colonnes uniques**
+- Les autres **attributs** deviennent des **colonnes**
+
+---
+
+#### Convertir les associations
+
+Il faut se baser sur la cardinalité de chaque association.
+
+Cas possibles (x vaut 0 ou 1) :
+- (x, n) - (x, 1) : Many to One / One to Many
+- (x, n) - (x, n) : Many to Many
+- Associations réflexives
+
+---
+
+##### Many to One - (x, n) - (x, 1)
+
+!!! success La règle
+- On ajoute une **clé étrangère** dans la table du côté de la relation **One** (x, 1)
+!!!
+
+- La clé étrangère est la clé primaire de la table côté **Many**
+- L'héritage entre dans ce cas :
+ - On considère qu'une entité spécialisée peut spécialiser exactement 1 entité générique (1,1)
+ - Une entité générique peut être spécialisée par n entités spécialisées (0,n)
+ - On est dans une relation (0,n) - (1,1)
+
+---
+
+###### Exemple Many to One
+
+| MCD | MLD |
+| -------------------------------------------- | ---------------------------------------------- |
+|  |  |
+
+---
+
+###### Exemple héritage
+
+| MCD | MLD |
+| ---------------------------------------------------- | ---------------------------------------------------- |
+|  |  |
+---
+
+##### Many to Many
+
+- Dans ce cas impossible de stocker une clé étrangère dans l'une des deux tables : il faudrait pouvoir stocker des listes de clés.
+
+!!! success La règle
+On crée une **table de jointure** qui va relier les deux tables
+!!!
+
+- **Nom** : composé des deux tables qu'elle relie, avec le nom de l'association netre deux : `entity1_action_entity2`
+- **Colonnes** : Clés étrangères des deux tables qu'elle relie + autres colonnes de la relation
+
+---
+
+###### Exemple
+
+
+
+
+---
+
+##### Associations réflexives
+
+Dans ce cas on applique exactement les mêmes règles :
+- Si la relation est **Many to One** : on ajoute une **clé étrangère**
+ - qui sera la clé primaire de la même table
+- Si la relation est **Many to Many** : on ajoute une **table de jointure**
+ - qui contiendra des clés primaires de la table
+---
+###### Exemple association réflexive Many to One
+
+
+
+---
+###### Exemple association réflexive Many to Many
+
+
+
+---
+
+##### Associations avec plus de deux tables
+
+!!! success La règle
+On crée une **table de jointure** qui va relier toutes les tables
+!!!
+
+| MCD | MLD |
+| ------------------------------------------- | ----------------------------------------- |
+|||
+
+---
+
+##### Cas particuliers
+
+- (0, 1) - (1, 1) : On utilisera une clé étrangère
+ - comme relation Many to One où n = 1
+- (1, 1) - (1, 1) : Ce type de relation n'a pas de sens
+ - Si cela arrive c'est que vous avez découpé en deux entités ce qui aurait dû n'en faire qu'une
+
+---
+
+#### Dans notre exemple
+
+| MCD | MLD |
+| ------------------------------------------- | ----------------------------------------- |
+|  |  |
+
+---
+
+## MPD - Modèle Physique de données
\ No newline at end of file
diff --git a/src/slides/B1/db/images/ex-mcd2.png b/src/slides/B1/db/images/ex-mcd2.png
new file mode 100644
index 0000000..977a209
Binary files /dev/null and b/src/slides/B1/db/images/ex-mcd2.png differ
diff --git a/src/slides/B1/db/images/ex-mld.png b/src/slides/B1/db/images/ex-mld.png
new file mode 100644
index 0000000..05b8c2f
Binary files /dev/null and b/src/slides/B1/db/images/ex-mld.png differ
diff --git a/src/slides/B1/db/images/heritage-mcd.png b/src/slides/B1/db/images/heritage-mcd.png
new file mode 100644
index 0000000..78305d4
Binary files /dev/null and b/src/slides/B1/db/images/heritage-mcd.png differ
diff --git a/src/slides/B1/db/images/heritage-mld.png b/src/slides/B1/db/images/heritage-mld.png
new file mode 100644
index 0000000..db1c2fb
Binary files /dev/null and b/src/slides/B1/db/images/heritage-mld.png differ
diff --git a/src/slides/B1/db/images/heritage.png b/src/slides/B1/db/images/heritage.png
new file mode 100644
index 0000000..33207ac
Binary files /dev/null and b/src/slides/B1/db/images/heritage.png differ
diff --git a/src/slides/B1/db/images/many-to-one-mcd.png b/src/slides/B1/db/images/many-to-one-mcd.png
new file mode 100644
index 0000000..e383a8a
Binary files /dev/null and b/src/slides/B1/db/images/many-to-one-mcd.png differ
diff --git a/src/slides/B1/db/images/many-to-one-mld.png b/src/slides/B1/db/images/many-to-one-mld.png
new file mode 100644
index 0000000..1356c96
Binary files /dev/null and b/src/slides/B1/db/images/many-to-one-mld.png differ
diff --git a/src/slides/B1/db/images/manytomany-mcd.png b/src/slides/B1/db/images/manytomany-mcd.png
new file mode 100644
index 0000000..ddbf6fd
Binary files /dev/null and b/src/slides/B1/db/images/manytomany-mcd.png differ
diff --git a/src/slides/B1/db/images/manytomany-mld.png b/src/slides/B1/db/images/manytomany-mld.png
new file mode 100644
index 0000000..f2bfb5f
Binary files /dev/null and b/src/slides/B1/db/images/manytomany-mld.png differ
diff --git a/src/slides/B1/db/images/mcd-base.png b/src/slides/B1/db/images/mcd-base.png
new file mode 100644
index 0000000..c511521
Binary files /dev/null and b/src/slides/B1/db/images/mcd-base.png differ
diff --git a/src/slides/B1/db/images/mcd-id.png b/src/slides/B1/db/images/mcd-id.png
new file mode 100644
index 0000000..66c405d
Binary files /dev/null and b/src/slides/B1/db/images/mcd-id.png differ
diff --git a/src/slides/B1/db/images/mcd.png b/src/slides/B1/db/images/mcd.png
new file mode 100644
index 0000000..0b7a366
Binary files /dev/null and b/src/slides/B1/db/images/mcd.png differ
diff --git a/src/slides/B1/db/images/reflexive-many-mcd.png b/src/slides/B1/db/images/reflexive-many-mcd.png
new file mode 100644
index 0000000..5594f59
Binary files /dev/null and b/src/slides/B1/db/images/reflexive-many-mcd.png differ
diff --git a/src/slides/B1/db/images/reflexive-many-mld.png b/src/slides/B1/db/images/reflexive-many-mld.png
new file mode 100644
index 0000000..86d2648
Binary files /dev/null and b/src/slides/B1/db/images/reflexive-many-mld.png differ
diff --git a/src/slides/B1/db/images/reflexive-mcd.png b/src/slides/B1/db/images/reflexive-mcd.png
new file mode 100644
index 0000000..b03f10d
Binary files /dev/null and b/src/slides/B1/db/images/reflexive-mcd.png differ
diff --git a/src/slides/B1/db/images/reflexive-mld.png b/src/slides/B1/db/images/reflexive-mld.png
new file mode 100644
index 0000000..edb068d
Binary files /dev/null and b/src/slides/B1/db/images/reflexive-mld.png differ
diff --git a/src/slides/B1/db/images/ternaire-mcd.png b/src/slides/B1/db/images/ternaire-mcd.png
new file mode 100644
index 0000000..4f8a674
Binary files /dev/null and b/src/slides/B1/db/images/ternaire-mcd.png differ
diff --git a/src/slides/B1/db/images/ternaire-mld.png b/src/slides/B1/db/images/ternaire-mld.png
new file mode 100644
index 0000000..295a794
Binary files /dev/null and b/src/slides/B1/db/images/ternaire-mld.png differ