Académique Documents
Professionnel Documents
Culture Documents
Base de Données
Leila GHORBEL
2023-2024
Introduction
Introduction
Objectifs
3
Introduction
Généralités sur les fichiers
Au début de l’informatique :
Le but essentiel de la machine consistait à calculer et à manipuler des
fonctions mathématiques et scientifiques
4
Introduction
Généralités sur les fichiers
Définitions :
Un fichier est une collection de données regroupées en enregistrements (lignes)
dont la structure est bien définie.
5
Introduction
Généralités sur les fichiers
Limites :
Connaître la structure des fichiers afin de pouvoir accéder aux informations
dont il a besoin
Écrire des programmes pour pouvoir effectivement manipuler les données des
fichiers
Modification de la structure des fichiers entraîne la modification des
programmes qui manipulent ces fichiers
Pour de nouvelles applications, l’utilisateur peut être amené à créer de
nouveaux fichiers pouvant contenir des informations déjà présentes dans
d’autres fichiers.
6
Introduction
Généralités sur les fichiers
8
Introduction
Bases de données
Définition :
« Une Base de Données (BD) est un ensemble structuré de données
enregistrées sur des supports accessibles par l’ordinateur pour satisfaire
simultanément plusieurs utilisateurs de manière sélective et en un temps
opportun »
Où :
Ensemble structuré de données : organisation et description des données et
des liens entre ces données à l’aide d’un modèle de données.
Supports accessibles par l’ordinateur : stockage sur disque.
Satisfaire simultanément plusieurs utilisateurs : partage de l’information.
De manière sélective : confidentialité, sécurité.
Temps opportun : performance, optimisation.
9
Introduction
Bases de données
Objectifs :
Bonne représentation du monde réel : une image aussi fidèle que possible
de la réalité.
Indépendance des programmes par rapport aux données.
Centralisation de l’information :
Non-redondance de l’information
Une saisie unique de l’information
Eviter les problèmes lors de la mise à jour
Permettre la liaison entre l’ensemble des données
10
Introduction
Systèmes de gestion de bases de données
Définition :
« Un Système de Gestion de Bases de Données (SGBD) est le logiciel qui permet
d’interagir avec la Base de Données »
SGBD BD
Exemples de SGBD :
Dans le domaine de la micro-informatique : ACCESS, PARADOX, DBASE,
FOXPRO, etc.
Sur gros systèmes : ORACLE, SQL Server, SYBASE, INGRES, INFORMIX, etc.
11
Introduction
Systèmes de gestion de bases de données
Objectifs:
Manipulations des données par des non informaticiens.
Efficacité des accès aux données : temps de réponse "rapide".
Cohérence des données : les données sont soumises à un ensemble de
contraintes d’intégrité lors de l’insertion ou de la mise à jour des données de la
base.
Sécurité des données : Protéger les données contre les accès non autorisés.
Pour cela, il faut pouvoir associer à chaque utilisateur des droits d’accès aux
données.
Résistance aux pannes : Pouvoir, suite à une panne, récupérer une base dans
un état "sain".
12
Introduction
Cycle de vie d’une base de données
Trois phases :
Phase de conception : C’est une phase d’analyse qui aboutit à déterminer le
schéma de la base de données.
Phase d’implantation qui consiste à :
Construire la base de données.
Saisir les premières données.
Phase d’exploitation qui consiste à exprimer :
des requêtes d’interrogation : pour récupérer des informations de la base.
des requêtes de mise à jour : pour modifier le contenu de la base.
13
Introduction
Modélisation conceptuelle de données
Définition :
« La modélisation conceptuelle de données a pour rôle la représentation des
données manipulées par l’organisme, ainsi que les liens sémantiques entre ces
données »
Formalisme utilisé : Entité /Association (ou Merise)
14
Introduction
Modélisation conceptuelle de données
Dictionnaire de données :
« Un dictionnaire de données regroupe l’ensemble des données manipulées par
l’organisme. »
Élaboration d’un dictionnaire de données :
Collecte des données éparpillées sur différents supports manipulés par
l’entreprise :
Supports papiers (facture, fiche client…)
Supports magnétiques (fichiers, bases de données…)
15
Introduction
Modélisation conceptuelle de données
Dictionnaire de données :
Pour chaque donnée répertoriée, le dictionnaire doit fournir :
La définition complète de la donnée
Le nom court de la donnée
le type de la donnée (texte, numérique, date…)
La règle de calcul de la donnée, lorsqu’il s’agit d’une donnée calculée
La règle de composition de la donnée, lorsqu’il s’agit d’une donnée
composée (dite non élémentaire).
16
Introduction
Modélisation conceptuelle de données
Dictionnaire de données :
Définition Nom Court Type Règle de calcul Règle de composition
Formalisme Entité/Association :
Définition :
« C’est un formalisme graphique de modélisation des données basé sur
un ensemble de concepts. Il permet une représentation fidèle de données du
champs d’étude et des liens sémantiques entre ces données »
Concepts :
Entité / Entité-Type
Association / Association-Type
Propriété
Identifiant
Cardinalité
Contrainte d’Intégrité Fonctionnelle (CIF)
18
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept1: Entité / Entité-Type
Entité : c’est la représentation d’un objet du monde réel d’une existence
propre (peut exister indépendamment de toute autre entité). Une entité peut
être identifiée de façon unique.
Exemples :
Le produit rétroviseur, le produit batterie, le produit ordinateur…,
L’usine Peugeot, l’usine Assad, l’usine hp…
19
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept1: Entité / Entité-Type
Entité-Type (ou classe d’entités): c’est le regroupement d’un ensemble
d’entités ayant des caractéristiques communes.
Exemples :
Entité-Type « Produits » : regroupe tous les produits ensemble.
Entité-Type « Usines » : regroupe toutes les usines ensemble.
Formalisme :
Nom de la classe d'entités
Exemples :
Produits Usines
20
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 2 : Association / Association-Type
Association: traduit un lien perçu entre au moins deux entités. C’est un objet
qui ne peut exister qu’au travers des entités qu’elle relie.
Exemples :
L’usine HP fabrique le produit ordinateur
L’usine Peugeot fabrique le produit rétroviseur
Le produit ordinateur se compose d’une unité centrale, d’un écran, d’un
clavier et d’une souris
21
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 2 : Association / Association-Type
Association-Type (Classe d’associations): regroupe un ensemble
d’associations ayant des caractéristiques communes et décrit un lien
sémantique entre les entités
Exemples :
Une usine fabrique des produits
Un produit se compose d’autres produits
…
Formalisme :
Nom de l‘Association-Type
22
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 2 : Association / Association-Type
Exemple: Usines Fabrique Produits
Se_Compose
0,n 0,n
0,n
0,n
Remarques :
Une Association-Type peut relier une Entité-Type à elle- même (association
réflexive)
Dans ce cas, il est nécessaire de nommer les rôles pour éviter l’ambiguïté (un rôle
est le lien entre l’Entité-Type et l’Aassociation-Type)
Composé
Produits
0,n Se_Compose
0,n
23
Composant
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 3 : Propriété
c’est une donnée élémentaire qui caractérise une Entité-Type ou Association-Type.
Exemples :
Libellé d’un produit
Adresse d’une usine
…
Formalisme / Exemple :
Usines Produits
CodeUsine Fabrique NuméroProduit
NomUsine 0,n 0,n
Prix LibelléProduit
AdresseUsine
CatégorieProduit
TéléphoneUsine ImageProduit
24
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 4 : Identifiant
Identifiant d’une Entité-Type
C’est une propriété particulière de l’Entité-Type telle qu’à chaque valeur de
cette propriété correspond une et une seule entité de l’Entité-Type.
25
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 4 : Identifiant
Formalisme / Exemple :
L’identifiant de l’Entité-Type « Usines » est CodeUsine
L’identifiant de l’Entité-Type « Produit » est NuméroProduit
L’identifiant de l’Association-Type « Fabrique » est le couple
(CodeUsine, NuméroProduit)
Usines
Produits
CodeUsine Fabrique NuméroProduit
NomUsine 0,n 0,n
Prix LibelléProduit
AdresseUsine CatégorieProduit
TéléphoneUsine ImageProduit
26
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 5 : Cardinalité
Il s’agit d’un couple de valeurs (MIN , MAX) associé à chaque rôle d’une
Association-Type :
Min représente le nombre minimum de fois qu’une entité donnée participe à
l’Association-Type. Il peut être 0 ou 1.
Max représente le nombre maximum de fois qu’une entité donnée participe
à l’Association-Type. Il peut être 1 ou N.
Formalisme / Exemple :
Usines Produits
CodeUsine Fabrique NuméroProduit
NomUsine 1,n 0,n
Prix LibelléProduit
AdresseUsine CatégorieProduit
TéléphoneUsine ImageProduit
27
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Concept 6 : Contrainte d’Intégrité Fonctionnelle (CIF)
Une CIF exprime le fait que la connaissance d’une ou de plusieurs entités
entraîne la détermination des autres entités.
Formalisme / Exemple : Formalisme / Exemple :
Produits
Usines
NuméroProduit
CodeUsine
1,n 1,1 LibelléProduit
NomUsine Fabrique
CatégorieProduit
AdresseUsine
ImageProduit
TéléphoneUsine
PrixProduit
Remarque :
CIF est dite Forte Si la source de la CIF est (1,1)
CIF est dite Faible Si la source de la CIF est (0,1)
28
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Exemple 1 :
On vous demande de modéliser l’activité d’une entreprise :
Chaque produit, caractérisé par un code, un libellé, son prix et sa quantité, est
stocké dans un dépôt unique. Un dépôt peut contenir plusieurs produits. Il se
caractérise par un numéro, un nom, une adresse et sa valeur (le prix total des
produits stockés).
Un client, caractérisé par un numéro, un nom et une adresse, peut émettre
plusieurs commandes. Par contre, une commande, caractérisée par un numéro et
une date, concerne un seul client. Le numéro d’une commande se compose de 6
chiffres : les deux premiers pour indiquer l’année et les quatre derniers constituent
un numéro séquentiel.
Une commande contient plusieurs produits. Pour chaque produit d’une
commande, il est nécessaire de garder la quantité.
29
Introduction
Modélisation conceptuelle de données
Formalisme Entité/Association :
Solution :
Produits
NumPdt Commandes
LibPdt Concerner
0,n QtCde 1,n NumCde
PrixPdt DatCde
QtPdt
1,1
1,1
Stocker
Passer
1,n
1,n
Dépôts
NumDep Clients
NomDep NumClt
AdrDep NomClt
ValDep (C) AdrClt
30
Introduction
Modélisation conceptuelle de données
31
Introduction
Modélisation conceptuelle de données
32
Introduction
Modélisation conceptuelle de données
33
Introduction
Modélisation conceptuelle de données
34
Introduction
Modélisation conceptuelle de données
Employés
Numéro_Emp
Nom_Emp
DateNais_Emp
Catégorie_Emp
DateEmb_Emp
DateDeb_Emp
DateFin_Emp
Salaire_Emp
Solution
incorrecte : certaines propriétés n’ont pas de sens pour un sous
ensemble d’entités
35
Introduction
Modélisation conceptuelle de données
Emp_permanents Emp_contractuels
Numéro_Emp Numéro_Emp
Nom_Emp Nom_Emp
DateNais_Emp DateNais_Emp
Catégorie_Emp DateDeb_Emp
DateEmb_Emp DateFin_Emp
Salaire_Emp Salaire_Emp
36
Introduction
Modélisation conceptuelle de données
Emp_permanents Emp_contractuels
Catégorie_Emp DateDeb_Emp
DateEmb_Emp DateFin_Emp
37
Introduction
Modélisation conceptuelle de données
0,n 0,n
Pays
NomPays 0,n Côtoie
SuperficiePays
1,n NbHabitants 1,n
Espace Maritime
1,1 0,n 0,n NomEspace
Ses_Villes
Se_Jette
Sa_Capitale Traverse
Distance
1,1
Ville 0,1
NomVille 1,n 1,1
Localisation
Fleuve Mer Océan
NomFleuve ProfondeurMer SuperficieMer
Longueur 39
Introduction
Modélisation logique de données
40
Introduction
Modélisation logique de données
Modèle relationnel
Relation
C’est une table à deux dimensions et qui comporte obligatoirement un nom
Formalisme :
R A1 A2 A3 … An
T1 V11 V12 V13 V1n
T2 V21 V22 V23 V2n
T3 V31 V32 V33 V3n
…
Tm Vm1 Vm2 Vm3 Vmn
41
Introduction
Modélisation logique de données
Modèle relationnel
Domaine :
C’est un ensemble de valeurs qui servent à définir une donnée.
Exemple : Entier, Date, Caractère
Couleur = {Rouge, Bleue, Jaune…} Institution = {ISECS, ISIMS, FSEG…}
Attribut :
Il correspond à une colonne d’une relation.
Il traduit la notion de propriété du modèle Entité-Association.
Il est rattaché à un domaine de valeurs.
42
Introduction
Modélisation logique de données
Modèle relationnel
Tuple ou n-uplet :
Il correspond à une ligne d’une relation
Il présente un ensemble de valeurs d’attributs (une valeur par colonne de la
relation).
Clé primaire :
C’est un attribut ou un groupe d’attributs dont les valeurs identifient de façon
unique une ligne de la relation.
Elle doit être mise en évidence dans la liste des attributs qui caractérisent la
relation : soit en gras, soit soulignée…
Remarque : toute relation possède une clé primaire
43
Introduction
Modélisation logique de données
Modèle relationnel
Clé étrangère :
C’est un attribut ou un groupe d’attributs qui se trouve être clé primaire d’une
autre relation.
Elle permet d’établir le lien entre deux relations.
Elle doit être mise en évidence dans la liste des attributs qui caractérisent la
relation : soit suivie d’un astérisque (*), soit suivie d’un dièse (#)…
Remarque :
Toute clé étrangère doit vérifier la contrainte d’intégrité référentielle, c’est
à dire que toute valeur saisie pour un attribut clé étrangère doit être
obligatoirement incluse dans l’ensemble des valeurs de la clé primaire
référencée.
44
Introduction
Modélisation logique de données
Modèle relationnel
Schéma d’une relation :
Il décrit la structure de la relation. Il est composé de :
NOM de la relation,
La liste des ATTRIBUTS suivis de leurs DOMAINES qui caractérisent la relation
La CLE PRIMAIRE et éventuellement la ou les CLES ETRANGERES.
Syntaxe :
R (A1 : D1 , A2 : D2 , … , An : Dn *)
Où :
Ai est l’attribut i et Di le domaine de valeurs de Ai
La clé primaire est soulignée
La ou les clés étrangères sont suivies par une étoile 45
Introduction
Modélisation logique de données
Modèle relationnel
Exemple :
PRODUITS (NuméroProduit : Numérique, LibelléProduit : Texte, PrixUnitaire :
Numérique, CodeUsine : Texte *)
Remarque : Par souci de simplification d’écriture, on écrit souvent les schémas
des relations sans faire apparaître les noms des domaines.
PRODUITS (NuméroProduit, LibelléProduit, PrixUnitaire, CodeUsine *)
Schéma relationnel :
C’est l’ensemble des schémas des relations qui composent la base de données.
46
Introduction
Modélisation logique de données
Produits
NuméroProduit
LibelléProduit
CatégorieProduit
PrixProduit
47
Introduction
Modélisation logique de données
Produits Usines
NuméroProduit Fabrique CodeUsine
LibelléProduit 1,n Quantité 1,n NomUsine
CatégorieProduit AdresseUsine
PrixProduit TéléphoneUsine
Produits Usines
NuméroProduit Fabrique CodeUsine
LibelléProduit 1,1 1,n NomUsine
CatégorieProduit AdresseUsine
PrixProduit TéléphoneUsine