maj des liens et ajout bo dans les cours bdd sgbd

This commit is contained in:
2024-11-13 09:57:39 +01:00
parent b496581c89
commit 242f27321a
5 changed files with 43 additions and 20 deletions

View File

@@ -1,5 +1,17 @@
## Conception des bases de données
--------
### Le programme
<img src="assets/bo_sgbd.png" alt="bo_sgb" style="zoom:67%;" />
## Introduction : Pourquoi les bases de données ?
> Imaginez que vous soyez responsable d'un magasin de jeux vidéo. Vous commencez par gérer vos stocks sur un simple fichier Excel : titre du jeu, console, stock disponible. Tout va bien, jusqu'à ce que les ventes explosent ! Vous vous retrouvez avec des centaines de jeux, des promotions à gérer, des clients à fidéliser… et là, votre fichier Excel montre ses limites : lenteur, erreurs de saisie, données dupliquées. **Bienvenue dans le monde des bases de données !**
@@ -11,9 +23,9 @@ Dans les années 1970, un certain **Edgar F. Codd**, mathématicien chez IBM, in
---
## 1. Les limites des structures plates
## Les limites des structures plates
### **1.1 Définition d'une structure plate**
### Définition d'une structure plate
Une structure plate est un tableau bidimensionnel, comme une feuille Excel ou une table simple dans un fichier CSV. Chaque ligne représente un enregistrement, et chaque colonne, un attribut (ou champ). Exemple :
| ID | Nom | Console | Stock |
@@ -22,8 +34,11 @@ Une structure plate est un tableau bidimensionnel, comme une feuille Excel ou un
| 2 | Zelda | Switch | 30 |
| 3 | FIFA | PS5 | 20 |
### **1.2 Limites de cette approche**
#### **1.2.1 Redondance des données**
-----------------
### Limites de cette approche
#### Redondance des données
Supposons que vous ajoutiez une colonne pour l'éditeur de chaque jeu :
| ID | Nom | Console | Stock | Éditeur |
@@ -42,9 +57,9 @@ Il devient complexe de représenter les relations entre différentes entités. P
---
## 2. Vocabulaire des schémas relationnels
## Vocabulaire des schémas relationnels
### **2.1 Table (ou relation)**
### Table (ou relation)
Une table est un ensemble de lignes (ou enregistrements) et de colonnes (ou attributs). Chaque table représente une entité. Par exemple, une table `Jeux` pourrait ressembler à :
| ID | Nom | Console |
@@ -53,16 +68,16 @@ Une table est un ensemble de lignes (ou enregistrements) et de colonnes (ou attr
| 2 | Zelda | Switch |
| 3 | FIFA | PS5 |
### **2.2 Enregistrement (ou ligne, ou tuple)**
### Enregistrement (ou ligne, ou tuple)
Une ligne de la table représente une occurrence d'une entité. Exemple : `(1, Mario, Switch)`.
### **2.3 Attribut (ou colonne)**
### Attribut (ou colonne)
Chaque colonne représente une propriété de l'entité. Exemple : `Nom`, `Console`.
### **2.4 Clé primaire (Primary Key)**
### Clé primaire (Primary Key)
Un attribut (ou un ensemble d'attributs) qui permet d'identifier de manière unique chaque enregistrement. Exemple : l'attribut `ID` dans notre table `Jeux`.
### **2.5 Clé étrangère (Foreign Key)**
### Clé étrangère (Foreign Key)
Un attribut qui établit une relation entre deux tables. Exemple : si nous avons une table `Ventes` indiquant quel client a acheté quel jeu, la clé étrangère pourrait être l'ID du jeu.
**Table Ventes :**
@@ -72,10 +87,10 @@ Un attribut qui établit une relation entre deux tables. Exemple : si nous avons
| 1 | 1 | 1001 |
| 2 | 2 | 1002 |
### **2.6 Relation**
### Relation
Une relation représente le lien entre deux tables via des clés primaires et étrangères.
### **2.7 Schéma relationnel**
### Schéma relationnel
Un schéma relationnel décrit l'organisation des tables et les relations entre elles. Exemple d'un schéma simplifié :
- **Jeux**(ID, Nom, Console)

View File

@@ -1,5 +1,13 @@
## Le Modèle Relationnel : Fondations et Contraintes
----------------
### Le programme
![bo_relationnel](assets/bo_relationnel.png)
### Introduction : Le modèle qui a tout changé
Dans les années 1970, un chercheur d'IBM, **Edgar F. Codd**, propose un nouveau modèle pour organiser les données : le modèle relationnel. À l'époque, c'est une révolution. Les bases de données étaient alors gérées avec des structures hiérarchiques ou en réseau, complexes et rigides. Le modèle relationnel simplifie tout en utilisant des **tables** (ou relations) pour organiser les données. Résultat ? Une gestion plus efficace et un accès plus rapide aux informations.
@@ -8,9 +16,9 @@ Aujourd'hui, des outils comme MySQL, PostgreSQL ou SQLite appliquent toujours ce
---
## 1. Les Clés : Gardiennes de l'Ordre
## Les Clés : Gardiennes de l'Ordre
### **1.1 Clé Primaire (Primary Key)**
### Clé Primaire (Primary Key)
#### **Définition**
La clé primaire est lattribut (ou combinaison dattributs) qui permet didentifier de manière unique chaque enregistrement dans une table. **Cest léquivalent dune carte didentité dans une base de données.**
@@ -30,7 +38,7 @@ Ici, la colonne `ID_Etudiant` est la clé primaire, car chaque valeur est unique
- **Unicité** : Chaque enregistrement est unique.
- **Référence** : Les autres tables peuvent sy référer via des clés étrangères.
### **1.2 Clé Étrangère (Foreign Key)**
### Clé Étrangère (Foreign Key)
#### **Définition**
Une clé étrangère est un attribut dune table qui fait référence à la clé primaire dune autre table. Elle établit un lien logique entre les deux tables.
@@ -56,11 +64,11 @@ Ici, la colonne `ID_Prof` de la table `Cours` est une clé étrangère qui fait
---
## 2. Les Contraintes d'Intégrité : Les Règles du Jeu
## Les Contraintes d'Intégrité : Les Règles du Jeu
Les contraintes dintégrité garantissent la cohérence des données dans une base de données relationnelle. Elles permettent d'éviter des erreurs telles que des données incohérentes ou incomplètes.
### **2.1 Contrainte d'Intégrité d'Entité**
### Contrainte d'Intégrité d'Entité
**Définition** : La clé primaire ne doit jamais contenir de valeur `NULL` et doit être unique.
**Exemple** :
@@ -72,7 +80,7 @@ Dans la table `Etudiants`, il est impossible davoir deux fois le même `ID_Et
| 2 | Durant | Jean | 19 |
| 1 | Morel | Sophie | 20 |
### **2.2 Contrainte d'Intégrité Référentielle**
### Contrainte d'Intégrité Référentielle
**Définition** : Une clé étrangère doit toujours faire référence à une clé primaire existante dans la table référencée.
**Exemple** :
@@ -83,7 +91,7 @@ Si un cours dans la table `Cours` fait référence à un `ID_Prof` inexistant da
| 101 | Mathématiques | 1 |
| 102 | Informatique | 4 |
### **2.3 Contrainte d'Intégrité de Domaine**
### Contrainte d'Intégrité de Domaine
**Définition** : Les valeurs dun attribut doivent respecter un type ou un domaine prédéfini.
**Exemple** :

Binary file not shown.

After

Width:  |  Height:  |  Size: 65 KiB

BIN
BDD_SGBD/assets/bo_sgbd.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 91 KiB

View File

@@ -14,7 +14,7 @@
</tr>
<tr>
<td style="text-align: center;"><a title="Bases de données" href="bases_donnees"><img src='assets/bdd.svg' width="128px"/><br/>Bases de données</a></td>
<td style="border: none;text-align: center;"><a title="SGBD" href="SGBD"><img src='assets/sgbd.svg' width="128px"/><br/>SGBD</a></td>
<td style="border: none;text-align: center;"><a title="SGBD" href="BDD_SGBD"><img src='assets/sgbd.svg' width="128px"/><br/>SGBD</a></td>
<td style="border: none;text-align: center;"><a title="Routage et Algorithmes de routage" href="Routage"><img src='assets/routage.svg' width="128px"/><br/>Routage et Algorithmes de routage</a></td>
<td style="border: none;text-align: center;"><a title="Calculabilité" href="Calculabilite"><img src='assets/calculabilite.svg' width="128px"/><br/>Calculabilité</a></td>
<td style="border: none;text-align: center;"><a title="Recherche textuelle" href="Recherche_Textuelle"><img src='assets/recherche.svg' width="128px"/><br/>Recherche textuelle</a></td>