2. 2
I. Introduction aux Bases de Données
Bases de Données - Sommaire
Qu’est ce qu’une Base de Données (BD) ?
Cycle de vie d ’une base de données
Qu’est ce qu’un Système de Gestion de Bases
de Données (SGBD)?
Caractéristiques d ’un SGBD
II. Fondement du Modèle Relationnel
Définition du modèle
Algèbre relationnelle
SGBD Relationnels
Buts recherchés des DB
Avantages de l ’approche BD
Architecture d ’un SGBD
3. 3
Objectifs
Savoir les concepts et les méthodes utilisés
pour la conception d ’une BD
Utiliser le SGBD ACCESS
4. 4
I.1 Qu’est ce qu’une Base de Données
BD - I. Introduction aux Bases de Données
Définition
“collection de données enregistrées ensemble,
sans redondance inutiles, pour servir plusieurs
applications, on y enregistre les données de façon
à ce qu’elles soient indépendantes des
programmes qui les utilisent, on utilise une
approche commune et contrôlée pour ajouter,
supprimer, modifier, retrouver des données”
5. 5
I.1 Qu’est ce qu’une Base de Données (suite)
BD - I. Introduction aux Bases de Données
BD = Ensemble d ’informations sur un sujet qui est :
Cohérent et Intégré : les données sont structurés sur
des définitions claires et non ambiguës
Partagé : Les données peuvent être utilisées par
plusieurs utilisateurs
Non redondant : chaque donnée ne doit être
présentée qu’une seule fois
6. 6
I.1 Qu’est ce qu’une Base de Données - Exemples
BD - I. Introduction aux Bases de Données
Gestion de personnels, étudiants, cours, inscriptions
d ’une université ou d ’une école
Système de réservation de places d ’avions dans une
compagnie arienne
Gestion des comptes - clients dans une société
bancaire
.… etc.
Système de gestion des commandes des clients dans
une société de vente
7. 7
I.2 Buts recherchés des DB
BD - I. Introduction aux Bases de Données
Répondre aux évolutions :
Des entreprises :
Des Technologies :
Des systèmes d’exploitations et des architectures
matérielles
Volume important de données
Données centralisées ou réparties
Données doivent être accessible en temps utile
Accroissement des performances
Diminution des coûts
8. 8
I.3 cycle de vie d’une BD
BD - I. Introduction aux Bases de Données
Une BD passe par quatre phases :
Conception de la BD
Implantation de la BD dans un SGBD
Utilisation de la BD
Maintenance de la BD
9. 9
I.3 cycle de vie d’une BD - Conception de la BD
BD - I. Introduction aux Bases de Données
Représentation du monde réel par un schéma en
utilisant une démarche de modélisation :
Modèle Entités-Association
Schéma
conceptuel
Analyse
conceptuelle
Énoncé
10. 10
I.3 cycle de vie d’une BD - Conception de la BD (suite)
BD - I. Introduction aux Bases de Données
Cette phase d ’analyse conceptuelle consiste à :
faire l ’inventaire des données dont on élimine les
redondances, les synonymes et les polysèmes
définir les entités ayant une existence visible
définir les identifiants des entités
11. 11
I.3 cycle de vie d’une BD - Conception de la BD (suite)
BD - I. Introduction aux Bases de Données
Cette phase d ’analyse conceptuelle consiste à (suite) :
définir les associations entre ces entités
définir les cardinalités précisant les participations
d ’une occurrence d ’une entité à une association.
Préciser les règles et contraintes de gestion
12. 12
I.3 cycle de vie d’une BD - Conception de la BD (suite)
BD - I. Introduction aux Bases de Données
Énoncé
Objectifs Perception
Monde réel
Problème :
Faire l ’inventaire de toutes les personnes possédant des voitures
13. 13
I.3 cycle de vie d’une BD - Conception de la BD (suite)
BD - I. Introduction aux Bases de Données
Schéma
conceptuel
Possède1-N 1-1
Analyse
conceptuelle
Personnes Voitures
Énoncé
Objectifs? Perception
Monde réel
Règles :
• Seules les voitures dont la modèle est >=1990 sont considérés
• Seules les personnes qui habitent à Casa sont concernées
N° plaque
Marque
Modèle
...
N° CIN
Nom
Adresse
...
..
14. 14
I.3 cycle de vie d’une BD - Implantation de la BD
BD - I. Introduction aux Bases de Données
Concevoir un schéma interne unique représentatif du
schéma conceptuel et représentable par un SGBD
modèle Entité-Association
Modèle relationnel
16. 16
TRAVAIL
Nom NumMatrLocalité
POSSESSION
NumMatr Valeur
MEDECIN S
NumMatr Nom
POLICLINIQUE
Nom TéléphoneLocalité
SPECIALITE
Valeur
Modèle Relationnel
I.3 cycle de vie d’une BD - Implantation de la BD
Exemple Policlinique
BD - I. Introduction aux Bases de Données
17. 17
I.3 cycle de vie d’une BD - Implantation de la BD (suite)
BD - I. Introduction aux Bases de Données
Transmission de ce schéma au SGBD en utilisant un
langage de description de données DDL
Niveau visuel ne nécessitant aucune programmation
Niveau programmation en utilisant SQL
(Structured query language : langage structuré pour les requêtes)
18. 18
I.3 cycle de vie d’une BD - Utilisation de la DB
BD - I. Introduction aux Bases de Données
Interrogation et mise à jour de la base en utilisant un
langage de manipulation de données (DML). Ce
langage permet de créer :
Des requêtes d ’interrogation : sélection de
données
Des requêtes mise à jour des données :
Ajout,
suppression,
modification
19. 19
I.3 cycle de vie d’une BD - Maintenance de la DB
BD - I. Introduction aux Bases de Données
Deux types de maintenance :
Corrective : supprimer les données
polluantes, redondantes
Evolutive : Faire évoluer la structure des
données en ajoutant de nouvelles propriétés
20. 20
Accès à l'information rapide et facile.
I.4 Avantages d'une base de données
BD - I. Introduction aux Bases de Données
Toute l'information se retrouve à une seule place dans
une base de données.
Plus besoin d'essayer de regrouper l'information qui
provient de plusieurs sources.
Recherche facile.
Meilleure gestion des données.
21. 21
Définition
BD - I. Introduction aux Bases de Données
1.5 Qu’est ce qu’un Système de Gestion de Bases de
Données (SGBD) ?
SGBD = ensemble d'outils logiciels permettant
la création, l'utilisation, l ’administration et
la maintenance de bases de données.
Il représente l ’interface entre les applications
et les bases de données
22. 22
BD - I. Introduction aux Bases de Données
1.6 Caractéristiques d ’un SGBD
Indépendance physique : la façon dont les données sont
structurées et manipulées ne doit pas dépendre des structures
de stockage
Indépendance logique : Intégrer toutes les visions
personnelles dans une vision globale.
Manipulation des données : Permettre l ’accès facile aux
données par des non informaticiens
23. 23
BD - I. Introduction aux Bases de Données
1.6 Caractéristiques d ’un SGBD (suite)
Non redondance : chaque données ne doit être présente
qu’une seule fois dans la base.
Cohérence : Garantir un état cohérent des données en les
soumettant à des contraintes d ’intégrité.
Efficacité des accès : Temps d ’accès raisonnable
24. 24
BD - I. Introduction aux Bases de Données
1.6 Caractéristiques d ’un SGBD (suite)
Partageabilité : Permettre les accès simultanés de plusieurs
utilisateurs aux même données
Sécurité : Protection des données contre des accès non
autorisés (Définition des utilisateurs et leurs droits)
Résistance aux pannes : Récupération des données de la base
en cas de pannes
25. 25
BD - I. Introduction aux Bases de Données
1.7 Architecture d ’un SGBD
SGBDBD
Interface
d ’accès
physique
Stockage/ accès
Optimisation
Analyse/vérification des requêtes
Convivialité de l ’interface
Interface
utilisateurs
26. 26
BD - I. Introduction aux Bases de Données
1.7 Architecture d ’un SGBD - 3 Couches
Pour garantir l ’indépendance physique/logique,
un SGBD est structuré en trois couches
BD
Couche
interne
Couche
logique
Couche
externe
Stockage Contrôle Dialogue
27. 27
BD - I. Introduction aux Bases de Données
BD
Couche
interne
Couche
logique
Couche
externe
Stockage Contrôle Dialogue
• Stockage des
données
• Gestion des
fichiers
• Gestion des
accès (index,
clés, …
• Optimisation des
requêtes
• Gestion des
accès
• Contrôle de la
cohérence des
données
• Analyse des
demandes
• contrôle des
droits
• présentation
des résultats
1.7 Architecture d ’un SGBD - 3 couches (suite)
28. 28
BD - II. Fondement du modèle relationnel
II.1 Modèle Entité-Association (EA)
Origines: C.Bachman (1969), P.Chen (1976).
But: Permettre la description conceptuelle des
structures de données d ’une application et fournir des
outils pour l’analyse des données et de leurs liaisons.
Concepts de base sont les concepts d ’abstraction de
la réalité :
Objet Entité
Propriété Attribut
Identifiant Clé
Lien Association
29. 29
BD - II. Fondement du modèle relationnel
Modèle EA - Définitions
Commande
• N° commande
• Date commande
Produit
• N° Produit
• Désignation
• Prix unitaire
Concerner
- Quantité cdée
Entité
Nom d’entité
Association
Nom d’association
Propriété d’entité
Propriété
d’association
1-N 0-N
Cardinalités
30. 30
BD - II. Fondement du modèle relationnel
Type d’entité (TE) :
Représentation d ’un
ensemble d’entités perçues
comme similaires et ayant
les mêmes caractéristiques
II.1 Modèle EA - Entités et Types d’Entités (TE)
ENTITE :
Représentation d ’un objet
du monde réel (concret ou
abstrait), ayant une existence
propre et conforme aux
besoins de l ’application
31. 31
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Attributs
Ensemble de propriétés
(caractéristiques) qui caractérisent
chaque élément d ’une entité
ELEVE
- NUMERO
- NOM
- PRENOM
- ADRESSE
- NAISSANCE
Domaine d ’un attribut :
Spécification de toutes les valeurs
possibles que peut prendre un attribut
Utilité
• Vérifier la validité d ’une données
• estimer la place de stockage d ’une donnée
Exemples
• Couleur = {rouge, bleu, jaune, vert}
• N° Produit = compris entre 1 et 225
• Nom = Chaîne de 20 caractères
32. 32
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Attributs (suite)
Les attributs peuvent être:
Atomiques (simples)
Exemple : Prénom, nom, ...
Monovalué : une seule valeur pour une entité donnée.
Exemple : Nom, Adresse, Date de naissance.
Multivalué :plusieurs valeurs pour une entité
donnée.
Exemple : Prénom.
Composés : composé de plusieurs attributs
atomiques
Exemple : Date de naissance
jour mois année
33. 33
BD - II. Fondement du modèle relationnel
Définition
un groupe minimal d’attributs tels qu’il n ’existe pas
deux entités ayant mêmes valeurs pour ces attributs
II.1 Modèle EA - Identifiant (Clé)
Deux possibilités d’identification d’une entité :
un attribut artificiel
Exemple
un numéro arbitraire dont l’unicité est garantie.
un ou plusieurs attributs de l’entité à identifier.
Exemples:
- le nom de l’éditeur = clé de l’entité éditeur.
- le nom et le prénom de l’auteur = clé de l’entité auteur.
34. 34
BD - II. Fondement du modèle relationnel
Entité Auteur
II.1 Modèle EA - Schéma d’un TE
Auteur
Nom Prénom
Date de naissance Adresse
Mois AnnéeJour
35. 35
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Associations et types d’associations
Association :
Représentation d ’un lien sémantique non orienté entre deux
ou plusieurs entités (qui joue un rôle déterminé)
Type d’association (TA) :
Représentation d ’un ensemble d’associations ayant la même
sémantique et décrites par les mêmes caractéristiques
Personne MaisonAchète
Achète = < 1 personne , 1 maison >
36. 36
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Rôles
Chaque entité joue un rôle particulier dans l’association. On dit
aussi que les d’entités mises en correspondance par l’association
participent à l’association.
Personne MaisonAchète
1 personne est
acheteur d ’1 maison
Acheteur Achetée
1 maison est achetée
d ’1 personne
Exemple 1
37. 37
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Rôles (suite)
Exemple 2
L’écriture de l’article “L’ordinateur va-t’il changer notre
mode de penser?” par Gustave Moeckli
le rôle joué par entité auteur Gustave Moeckli : il écrit
l’article “L’ordinateur...”
le rôle joué par l’entité article “L’ordinateur...”: il est
écrit par Gustave Moeckli.
Auteur ArticleEcriture
1 auteur écrit 1 article
Ecrit Est écrit
1 article est écrit par
1 Auteur
38. 38
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Extension d ’une association
C ’est l’ensemble des occurrences d’une association qui existent
(dans la base de données) à un instant particulier dans le temps.
e1
e2
e3
e4
.
.
.
a1
<écrit :e1, est écrit par : p1>
a2
<écrit :e2, est écrit par : p2>
a3
<écrit :e2, est écrit par : p3>
a4
<écrit :e2, est écrit par : p4>
a5
<écrit :e3, est écrit par : p5>
a6
<écrit :e4, est écrit par : p6>
.
.
.
p1
p2
p3
p4
p5
p6
.
.
.
39. 39
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Degrés d ’une association
caractérise le nombre de liens autorisés entre entités. Il sert
à distinguer les associations en fonction du nombre d'entités
qu'elles mettent en jeu.
On distingue :
Associations n-aires : relient plus de deux entités.
Client
Fournisseur
ProduitAchète/vend
Présence de 6 rôles :
Client achète/vend Produit Produit achète/vend Client
Fournisseur achète/vend Produit ….
Exemple 1 : associations ternaires (association de trois entités
40. 40
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Degrés d ’une association (suite)
Exemple 2 : Cours (Classe, Salle, Professeur)
associations binaires : ne relient que deux entités
Présence de 2 rôles :
Auteur écrit Article Article est écrit par Auteur
Auteur ArticleEcriture
écrit est écrit
41. 41
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Degrés d ’une association (suite)
Association cyclique : relie plusieurs fois, avec des rôles
différents, le même type entité. Appelée aussi réflexive ou
récursive
Marié à = < 1 personne /Marie, 1 personne/Femme>
Marié àPersonne
Marié à = < 1 personne , 1 personne >
Pour éviter les ambiguïtés, il faut spécifier le rôle de chaque entité
Marié àPersonne
Femme
Marie
Exemple 1 : association de couples mariés
42. 42
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Degrés d ’une association (suite)
Exemple 2 :
FILIATION(père: PERSONNE,
fils: PERSONNE)
p1
p2
p3
p4
.
.
.
a1
<père :p2, fils : p4>
a2
<père :p2, fils : p3>
a3
<père :p1, fils : p2>
.
.
.
FiliationPersonne
Père
Fils
Dans une occurrence
d’association, une personne
peut assumer un des deux
rôles père ou fils.
Père Fils
43. 43
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Attributs d ’une association
Une association peut avoir ses attributs propres
Ecrit Est écrit
Auteur ArticleEcriture
Temps
Exemple:
le temps qui a été nécessaire à l’auteur pour écrire un
article
Notation:
ECRITURE(écrit : AUTEUR, est écrit par : ARTICLE;
temps d’écriture)
44. 44
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Identification d’une association
L’identifiant de l’association est formé par l’ensemble des
identifiants des entités qui participent à l’association.
Exemple : ECRITURE(écrit: AUTEUR, est écrit par: ARTICLE)
–> l ’identifiant = Nom, Prénom, N° Article
Auteur
Nom Prénom
Adresse
Date de naissance
Mois AnnéeJour
Article
N° Article
Titre
Ecrit Est écrit
Ecriture
Temps
45. 45
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Cardinalités d ’une association
But:
exprimer le nombre minimum et le nombre maximum de
participations de chaque entité à une association.
On distingue 3 possibilités de participation
Plusieurs à un
N-1
Un à un
1-1
Plusieurs à plusieurs
N-M
47. 47
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Entité faible
C ’est une entité sans identifiant propre. L’identification se fait
• par une combinaison d’attributs propres de l’entité et du
ou des rôles assumés par d’autres entités qui participent
à la même association que l’entité faible.
• par le ou les rôles assumés par d’autres entités qui
participent à la même association que l’entité faible.
Personne
Nom Prénom
Chien
Nom
Est
propriétaire
a pour
propriétaire
Propriétaire(0,N) (1,1)
Adresse
Livre
ISBN Titre
ExemplaireEst un(1,N) (1,1)
Etat
Livre ISBN + N°ex
N° ex
48. 48
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - Contraintes d’intégrité (CI)
Définition
Une CI est une propriété non représentable par le modèle
E.A. que doivent satisfaire les données de la BD.
• CI Statique : propriété qui doit être vérifiée à tout moment.
• CI Dynamique : propriété que doit respecter tout changement
d’état de la BD
le changement d’état civil d’une personne doit respecter
les transitions suivantes :
célibataire marié
veuf
divorcé
le salaire d’un employé ne peut que croître
un auteur doit écrire au moins un article (cardinalité)
date de mariage d’une personne > date de naissance
49. 49
BD - II. Fondement du modèle relationnel
II.1 Modèle EA - C.I. statiques
Contrainte d’identification :
Contrainte de cardinalité :
Attribut obligatoire ou facultatif :
Tous les attributs formant un identifiant sont obligatoires.
attribut facultatif peut ne pas être renseigné : nom de jeune fille
définit le nombre minimum et le nombre maximum de
participations de chaque occurrence d’entité à une
association.
Toute entité ou association doit avoir un identifiant
50. 50
BD - II. Fondement du modèle relationnel
II.1 Exercices : Travaux dirigés N° : 1
Modèle EA – Etude de cas
Synthèse du travail sur le modèle entités-associations :
Etude de cas
d’une société d’intérim