113 lines
3.7 KiB
Markdown
113 lines
3.7 KiB
Markdown
---
|
|
title: "Base de données : définitions"
|
|
date: 2018-09-17
|
|
modify: 2018-09-24
|
|
categories: ["Base de données", "Cours"]
|
|
---
|
|
|
|
## Le domaine
|
|
|
|
Il représente l'ensemble des valeurs autorisées pour une information. Cette
|
|
notion est très proche [de domaine de définition](w_dom-def) en mathématiques.
|
|
On le décompose en deux grandes familles.:
|
|
|
|
- **élémentaire** : les types de base comme les entiers, réels, chaines de
|
|
caractères mais aussi les intervales ou les listes de valeurs
|
|
- **structuré** : des types de valeurs plus structurée comme pas exemple la
|
|
notion de point définit pat une composant `X` et `Y`.
|
|
|
|
[w_dom-def]:https://fr.wikipedia.org/wiki/Ensemble_de_d%C3%A9finition
|
|
|
|
## Le produit cartésien
|
|
|
|
Le produit cartésien des domaines $D_{1} D_{2}$ représente l'ensemble
|
|
des valeurs contenue dans $D_{1}$ et $D_{2}$, il est noté
|
|
|
|
$$
|
|
D_{1} \times D_{2}
|
|
$$
|
|
|
|
## La relation
|
|
|
|
Elle représente un sousrensemble r du produit carthésien. Elle est caractérisée
|
|
par un nom.
|
|
|
|
## Tuple ou n-tuple
|
|
|
|
Il représente une ligne dans une relation
|
|
|
|
## Attributs
|
|
|
|
Nom donné à un colonne. Il est composé d'un indentifiant et d'un domaine
|
|
|
|
## Schéma de relation
|
|
|
|
Il ets définis par un ensemble d'attributs U et un ensenble de contraintes. on
|
|
le note courrament R(U), R(U) décrit l'intention de la relation. La relation
|
|
(tableau + valeurs) définit une extention.
|
|
|
|
Une relation `r` est une instance finie d'un schema de relation notée `r:R(U)`,
|
|
exemple :
|
|
|
|
```
|
|
AlimentsPreferes(nom,type,origine,bio)
|
|
```
|
|
|
|
## La base de données
|
|
|
|
Un schéma de base de données et un ensemble de schemas de relation liés par des
|
|
dépendances référencielles (un type de contraines). Une base de données est
|
|
alors un ensemble de relations (extensions) associées au schéma et verifiamts
|
|
ses contraines.
|
|
|
|
## Le modèle relationnel
|
|
|
|
Il est définis en 1970 par *E. F. Codd* (IBM Research Lab) et se veut
|
|
indépendant de la representation physique des données. Il a une assise
|
|
mathématique forte ([algèbre relationnelle](w_algebre-r), [formes
|
|
normales](w_form-norm)).
|
|
|
|
[w_algebre-r]:https://fr.wikipedia.org/wiki/Alg%C3%A8bre_relationnelle
|
|
[w_form-norm]:https://fr.wikipedia.org/wiki/Forme_normale_(bases_de_donn%C3%A9es_relationnelles)
|
|
|
|
### Objectifs généraux
|
|
|
|
- Éliminer les comportements anormaux lors des mises à jour des données.
|
|
- Éliminer les données redondantes.
|
|
- Meilleures compréhension des relationssémantiques entres les données.
|
|
|
|
### Buts
|
|
|
|
Éliminer les anomalies de la relation universelle (tous les attributs sur toutes
|
|
les colonnes) pour faciliter la manipulation des relation. En un mot normaliser
|
|
les relations.
|
|
|
|
### Méthode
|
|
|
|
Décomposer la relation universelle en sous-relations qui ne souffre pas des
|
|
anomalies de la relation universelle.
|
|
|
|
- conserve toutes les données
|
|
- conserve un minimum de contraintes
|
|
|
|
### Les types de contraintes
|
|
|
|
- sur les attributs : valeur nulle autorisées (ou non), valeur imposée ...
|
|
- sur les n-uplets (plusieurs valeurs) : l'exemple d'une bibliothèque, la date
|
|
de retour d'un livre doit être suppérieure à la date d'emprunt.
|
|
- sur les relations : clé, cardinalité
|
|
- sur la base de données : clé étrangères
|
|
- sur l'évolution temporelle de la base de données : exemple de l'état civil,
|
|
on passe, dans l'ordre de célibataire à marié puis divorcé. On ne peut pas
|
|
passer de célibataire à divorcé.
|
|
|
|
# La notion de clé
|
|
|
|
Une clé doit permettre de trouver un tuple dans une relation avec seulement une
|
|
partie des attributs, dit plus simplement, identifier sans équivoque un
|
|
enregistrement.
|
|
|
|
Du point de vue mathématique, il ne doit pas avoir deux fois le même éléments
|
|
dans un ensemble : deux tuples d'une même relation ne peuvent être égaux.
|
|
|
|
Soit un ensemble $U\{A_{1}, A_{2}, ..., A_{n}\}$
|