Académique Documents
Professionnel Documents
Culture Documents
données
Jack BN
2 Sommaire
Introduction
Généralités sur les bases de données
Modèle entité/association (MCD)
Modèle relationnel (MLD)
Algèbre relationnelle
Le langage SQL
Sécurité des systèmes de gestion de
bases de données (SGBD)
29/12/2019
2019
23:39:09
3 Introduction(1/4)
29/12/2019
23:39:09
4 Introduction(2/4)
Historique
Avant 1960: organisation classique
des données en fichiers.
Fin 1960: Systèmes de Gestion des
Bases de Données (SGBD), les
systèmes réseaux et hiérarchiques.
Après 1970: 2ème génération des
SGBD (SGBD relationnels).
Début1980: 3ème génération des
SGBD(systèmes orientés objet).
29/12/2019
23:39:09
5 Introduction(3/4)
29/12/2019
23:39:09
6 Introduction(4/4)
29/12/2019
23:39:09
7 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Définition:
Un système d’information (d’une entreprise par
exemple) est l’ensemble d’informations qui y circulent
ainsi que l’ensemble des moyens mis en œuvre pour
les gérer.
29/12/2019
23:39:09
8 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Objectif d’un SI
Restituer l’information à la personne
concernée sous la forme
appropriée pour prendre une
décision ou effectuer un travail.
Ex: Les commandes des clients
doivent être traitées jusqu’à leur
aboutissement ou l’arrivée des
factures des fournisseurs.
29/12/2019
23:39:09
GENERALITES SUR LES BASES DE
9
DONNEES
Notion de Système d’Information (SI)
Fonctions principales d’un SI
Il y a quatre fonctions principales d’un SI :
o Recueillir l’information
o Mémoriser information
o Exploiter l’information (traitement):
Consulter
Organiser
Mettre à jour
Produire de nouvelles informations par des calculs
o Diffuser
29/12/2019
23:39:09
10 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Modélisation d’un SI
Il existe différentes méthodes de
modélisation dont MERISE est la
plus utilisée dans le monde
francophone
29/12/2019
23:39:09
11 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Modélisation d’un SI
Modéliser (Concevoir): créer une
représentation virtuelle de la réalité
de telle façon à faire ressortir les
points auxquels on s’intéresse.
Ce type de méthode est appelé
analyse.
29/12/2019
23:39:09
12 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Modélisation d’un SI
La phase de conception nécessite
des méthodes permettant la mise
en place d’un modèle sur lequel
on va s’appuyer.
Les méthodes d’analyse décrivent
les SI à l’aide des modèles.
29/12/2019
23:39:09
13 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Méthode MERISE
La démarche MERISE suit les étapes
suivantes:
I. Schéma directeur: définition
globale de la politique
d’organisation et d’automatisation
du SI (découper le SI en sous-
ensemble homogènes appelés
domaines)
29/12/2019
23:39:09
14 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Méthode MERISE
II. Etude préalable par domaine: Modèles de données
et de traitements. En de 4 phases:
1. Phase de recueil (analyse de l’existant)
2. Phase de conception (modélisation du futur
système)
3. Phase d’organisation (définition du futur système
au niveau organisationnel: qui fait quoi? Et Où?)
4. Phase d’appréciation (établir les coûts et délais de
réalisation)
29/12/2019
23:39:09
15 GENERALITES SUR LES BASES
DE DONNEES
Notion de Système d’Information (SI)
Méthode MERISE
III. Etude détaillée par projet: cahier des charges/
spécification.
IV. Réalisation: obtention de programmes à
essayer par les utilisateurs.
V. Mise en œuvre: Formation des utilisateurs
responsables de l’utilisation de la solution mise
en place.
VI. Maintenance: Faire évoluer les applications
selon les avancées technologiques.
29/12/2019
23:39:09
GENERALITES SUR LES BASES
16
DE DONNEES
Niveau Question Contenu
Niveaux
Conceptuel (MCD) d’abstraction
Que faire? desmanipulées,
Données données règle de
gestion
29/12/2019
23:39:09
17 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de données et
de SGBD
Donnée
Une donnée est une représentation d'une
information sous une forme conventionnelle
destinée à faciliter son traitement.
C’est une information utilisée par un logiciel.
Elle peut être créée par l'utilisateur ou par le
programme lui-même.
29/12/2019
23:39:09
18 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Base de données
Une base de données (BD) est une
collection de données cohérentes et
structurées.
Une BD est un ensemble structuré de
données apparentées qui modélisent
un univers réel.
29/12/2019
23:39:09
19 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Place de bases de données dans une
entreprise
Une base de données est faite pour
enregistrer des faits, des opérations
au sein d'un organisme
(administration, banque, université,
hôpital, ...).
29/12/2019
23:39:09
20 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de données
et de SGBD
SGBD
SGBD: Logiciel(s) assurant la
structuration, le stockage, la
maintenance, la mise à jour et la
consultation des données d’une BD.
Un SGBD est un logiciel (ou un
ensemble de logiciels) permettant de
manipuler les données d’une base de
données.
29/12/2019
23:39:09
21 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de données
et de SGBD
Le SGBD est chargé de:
gérer les fichiers constituant une base
de données,
prendre en charge les fonctionnalités
de protection et de sécurité
fournir les différents types d’interface
nécessaires à l’accès aux données.
29/12/2019
23:39:09
22 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Une des tâches principales du
SGBD est de masquer à l’utilisateur
les détails complexes et fastidieux
liés à la gestion de fichiers.
29/12/2019
23:39:09
23 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Avantage d’un SGBD sur les systèmes à
fichiers
Uniformisation de la saisie et
standardisation des traitements
Contrôle immédiat de la validité des
données
Partage des données entre plusieurs
traitements
29/12/2019
23:39:09
24 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Fonctions d’un SGBD
Un SGBD doit garantir les fonctions telles
que :
la cohérence des données : un
SGBD doit permettre la définition
des contraintes d’intégrité au sein de
la base de données,
29/12/2019
23:39:09
25 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Fonctions d’un SGBD
la concurrence des accès: Dans le but
d’éviter les blocages, tout en
empêchant des modifications
anarchiques, lorsque plusieurs
utilisateurs désirent accéder en même
temps aux mêmes données, le SGBD
doit gérer cette concurrence d’accès
en ordonnançant les demandes.
29/12/2019
23:39:09
26 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Fonctions d’un SGBD
la confidentialité des données: un SGBD
doit permettre le contrôle des accès lors
de la création, la modification, la
consultation et la suppression des
données ; ce contrôle est réalisé par
l’utilisation de mots de passe ou par le
cryptage des données,
29/12/2019
23:39:09
27 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Fonctions d’un SGBD
la sécurité des données : un SGBD
doit assurer la sécurité des données
contre les incidents matériels ou
logiciels.
29/12/2019
23:39:09
28 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Choix d’un SGBD
Deux catégories de SGBD:
SGBD payant,
SGBD open source.
29/12/2019
23:39:09
29 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Choix d’un SGBD
SGBD payant
DB2-UDB,
Oracle,
Sybase ASE,
Microsoft SQL Server.
29/12/2019
23:39:09
30 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Choix d’un SGBD
SGBD open source
MySQL,
PostgreSQL ,
OpenIngres,
Cloudscape.
29/12/2019
23:39:09
31 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Facteurs objectifs de choix d’un SGBD
la politique de votre entreprise
concernant ses fournisseurs ,
la politique sécuritaire ,
le budget à disposition ,
29/12/2019
23:39:09
32 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Facteurs objectifs de choix d’un SGBD
les compétences déjà acquises en
terme de développement et
d'administration, et au besoin le prix
de la formation,
le système d'exploitation hébergeant,
les architectures logicielles et
matérielles. 29/12/2019
23:39:09
33 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de données
et de SGBD
Facteurs techniques de choix d’un SGBD
la richesse fonctionnelle du SGBD
les ressources (disques, mémoire, CPUs,
Transactions par secondes, nombre de
connexions simultanées),
l'attente que vous avez vis-à-vis du
support technique,
29/12/2019
23:39:09
34 GENERALITES SUR LES BASES
DE DONNEES
Concepts de donnée, de base de
données et de SGBD
Facteurs technique de choix d’un SGBD
les compétences déjà acquises en
terme de développement et
d'administration, et au besoin le prix
de la formation,
le type d'accès aux données
(décisionnelle, reporting, mixte).
29/12/2019
23:39:09
35 MODELE
ENTITE/ASSOCIATION (MCD)
Le modèle entité/association (E/A)
repose sur une représentation
graphique qui facilite
considérablement sa compréhension
Le modèle E/A est utilisé presque
partout pour la conception de bases
de données
Le modèle Entité/Association est aussi
appelé Modèle Conceptuel de
Données (MCD)
29/12/2019
23:39:09
36 MODELE
ENTITE/ASSOCIATION (MCD)
Méthodes de conception issues du modèle
E/A
UML,
OMT,
MERISE,etc.
Ces notations sont globalement
équivalentes. Dans tous les cas la
conception repose sur deux concepts
complémentaires : entité et association.
29/12/2019
23:39:09
37 MODELE
ENTITE/ASSOCIATION (MCD)
Entités et attributs
Une entité représente un ensemble
d’objets d’un SI ayant les mêmes
caractéristiques
Elle est caractérisée par des
informations appelées« attributs »
ou « propriétés»
29/12/2019
23:39:09
38 MODELE
ENTITE/ASSOCIATION (MCD)
Entités et attributs
Identifiant : propriété particulière
permettant de distinguer sans
ambiguïté toutes les occurrences de
l’entité.
L’identifiant est un ensemble
minimal d’attributs caractérisant de
façon unique les occurrences de
l’entité.
29/12/2019
23:39:09
39 MODELE
ENTITE/ASSOCIATION (MCD)
Exemple et représentation graphique de l’entité
Etudiant
ID_Etudiant Identifiant
Nom
Prénom Entité Etudiant
Sexe
Date_de_naissance
….
Attributs ou propriétés ou champs
NB: Dans la représentation graphique, l’identifiant est
souligné.
29/12/201
9 23:39:09
40 MODELE
ENTITE/ASSOCIATION (MCD)
Associations et cardinalités
Association
Association : lien entre 2 (ou
plus) entités.
Son nom est souvent un verbe
qui caractérise un type de relation
entre ces entités.
29/12/2019
23:39:09
41 MODELE
ENTITE/ASSOCIATION (MCD)
Associations et cardinalités
Exemple: Un lien entre un client et un
produit
Les clients commandent les produits.
29/12/2019
23:39:09
MODELE
42 ENTITE/ASSOCIATION (MCD)
Attributs d’une association
Une commande est caractérisée par la
date de commande et la quantité
commandée comme le montre la figure
ci-après.
Commander
Client Produit
Date
Quantité
29/12/2019
23:39:09
47 MCD: Contraintes d’intégrité
Le modèle E/A (virtuel) souffre de quelques
insuffisances :
Il ne proposer que des structures,
Il n’existe pas d’opération permettant de
manipuler les données, et pas (ou peu) de
moyen d’exprimer des contraintes,
Ces contraintes doivent être exprimées
en dehors du modèle E/A.
29/12/2019
23:39:09
48 MCD: Contraintes d’intégrité
Une contrainte d’intégrité (CI) est une
propriété (ou condition) que doivent
satisfaire les données.
Le but des contraintes d’intégrité est de
spécifier les contraintes de la réalité perçue
qui ne sont pas exprimables dans le modèle
Entité/Association.
29/12/2019
23:39:09
MCD: Contraintes d’intégrité
49
Une contrainte d’intégrité peut être :
statique: doit être vérifiée à tout moment
Ex: La date de mariage doit être
supérieure à la date de naissance
dynamique: tout changement d’état de la
base de données doit la respecter :
- Ex: Changement d’état civil
29/12/2019
23:39:09
MCD: Dictionnaire de données
50
L’ensemble des attributs d’une base de données constitue le
dictionnaire de données.
Chaque attribut peut avoir les propriétés suivantes:
Propriété Signification
Attribut Abréviation ou nom de l’attribut
Libellé Signification et rôle de l’attribut
Type Type de l’attribut (entier, réel, chaîne de
caractères, …)
51
29/12/201
9 23:39:09
Diagramme des cas d’utilisation du cas TANBEC
52
29/12/2019
23:39:09
53 Scénarios de cas d’utilisation
29/12/2019
23:39:09
Scénarios de cas d’utilisation
54
29/12/2019
23:39:09
Données persistantes dans le cas tanbec
55
29/12/2019
23:39:09
DESCRIPTIF DU DOCUMENT:
56
Dossier Client
29/12/2019
23:39:09
57 Données persistantes
29/12/2019
23:39:09
DESCRIPTIF DU DOCUMENT:
58
Commande Client
29/12/201
9 23:39:09
59 Données persistantes
29/12/2019
23:39:09
60 DESCRIPTIF DU DOCUMENT:
Commande tarification
29/12/2019
23:39:09
61 Données persistantes
29/12/2019
23:39:09
62 DESCRIPTIF DU DOCUMENT:
Commande fournisseur
29/12/2019
23:39:09
63 Données persistantes
29/12/2019
23:39:09
64 DESCRIPTIF DU DOCUMENT:
Facture client
29/12/2019
23:39:09
65 Données persistantes
29/12/2019
23:39:09
66 DESCRIPTIF DU DOCUMENT:
Reçu
29/12/2019
23:39:09
67 Données persistantes
29/12/2019
23:39:09
68 DESCRIPTIF DU DOCUMENT:
Facture fournisseur
29/12/2019
23:39:09
69 Le dictionnaire des données
29/12/2019
23:39:09
70 Le dictionnaire des données
29/12/2019
23:39:09
71 Le dictionnaire des données
29/12/2019
23:39:09
72 Le dictionnaire des données
29/12/2019
23:39:09
73 Le dictionnaire des données
29/12/2019
23:39:09
74 Le dictionnaire des données
29/12/2019
23:39:09
Modèle conceptuel du cas Tannerie TANBEC
75 les catégories d’entités
Il y a 6 catégories
d’entités
1. Catégorie Produits et services
29/12/2019
23:39:09
Modèle conceptuel du cas Tannerie TANBEC
76 les catégories d’entités
29/12/2019
23:39:09
Modèle conceptuel du cas Tannerie TANBEC
77 les catégories d’entités
29/12/2019
23:39:09
Modèle conceptuel du cas Tannerie TANBEC
78 les catégories d’entités
4. Catégorie Transactions avec des entités de l’environnement
Ce cas comporte de nombreuses entités de ce type dont les
commandes, les factures et les paiements
Nous relevons donc les entités Commande client et Commande
fournisseur, Facture client et Facture fournisseur, Paiement client
29/12/2019
23:39:09
Modèle conceptuel du cas Tannerie TANBEC
79 les catégories d’entités
4. Catégorie Transactions avec des entités de l’environnement
Les associations directes avec les entités externes:
Commande client - Client
Commande fournisseur - Fournisseur
Facture fournisseur - Fournisseur
29/12/2019
23:39:09
Modèle conceptuel du cas Tannerie TANBEC
80 les catégories d’entités
5. Catégorie Décisions prises dans l’organisation
29/12/2019
23:39:09
Modèle conceptuel du cas Tannerie TANBEC
81 les catégories d’entités
6. Catégorie Transactions internes au système opérant
Aucune entité d’association n’est requise
29/12/2019
23:39:09
Le modèle conceptuel de données du cas TANBEC
82
29/12/2019
23:39:09
Le MODELE LOGIQUE DE DONNEES
83
(MLD)
La modélisation conceptuelle des
données n’est pas une fin en soi.
Il s’agit d’une première étape dans la
conception et la réalisation d’une
base de données.
Le modèle qui résulte de cette
première étape doit être considéré
comme un modèle stable qui décrit
fidèlement le domaine ou le
problème à l’étude. 29/12/2019
23:39:09
Le MODELE LOGIQUE DE DONNEES
84
(MLD)
L’élaboration d’un modèle conceptuel
de données comporte de nombreux
avantages:
Il permet d’analyser les besoins en matière
de données sans égard au choix d’une
technologie de réalisation
Cela signifie qu’une fois le modèle
conceptuel élaboré, le concepteur pourra
faire le choix du type de SGBD sans
remettre en question ce modèle
29/12/2019
23:39:09
Le MODELE LOGIQUE DE DONNEES
85
(MLD)
Mieux encore, cela permet à une
organisation de changer de
technologie sans remettre en
question son modèle de données
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
86
1. Validation du MCD
Un MCD est valide s’il respecte au
minimum les règles 1 à 4 suivantes:
1. Chaque entité doit posséder un
identifiant.
2. Chaque attribut ne peut avoir
qu’une valeur à la fois et cette
donnée doit avoir un caractère
élémentaire, c’est-à-dire posséder
un type de données simple.
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
87
1. Validation du MCD
Un MCD est valide s’il respecte au
minimum les règles 1 à 4 suivantes:
3. Un attribut ne peut figurer qu’une
seule fois dans le diagramme entité
association.
4. Les attributs d’une entité décrivent
bien cette entité et lui
appartiennent en propre. Aucun ne
peut appartenir à une autre entité.
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
88
1. Validation du MCD
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
89
2. Terminologie de l’approche relationnel
Relation: une table comportant des
lignes et des colonnes
Ex: La relation ETUDIANT
MATRICULE PRENOM NOM DATE_NAISS
ANCE
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
90
2. Terminologie de l’approche relationnel
Attribut: une colonne nommée de
la table représentant la relation
Ex: La relation ETUDIANT
Nom de l’attribut
MATRICULE PRENOM NOM DATE_NAISS
ANCE
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
91
2. Terminologie de l’approche relationnel
Domaine: Ensemble de valeurs
admises pour un attribut. Il établit
les valeurs acceptables dans une
colonne.
Nom de l’attribut
MATRICULE PRENOM NOM DATE_NAISS
ANCE
Domaine: Texte
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
93
2. Terminologie de l’approche relationnel
Clé primaire: Ensemble minimal de
colonnes qui permet d’identifier de
manière unique chaque tuple dans
une table
Clé primaire Nom de l’attribut
MATRICULE PRENOM NOM DATE_NAISS
ANCE
Domaine: Texte
MLD: Passage du MCD au MLD
94
2. Terminologie de l’approche relationnel
Clé étrangère: Une ou plusieurs
colonnes dans une table qui a pour
but d’assurer une liaison entre deux
tables.
On y arrive en dupliquant la clé
primaire de la deuxième table dans
la première. On l’appelle aussi clé
externe.
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
95
2. Terminologie de l’approche relationnel
Exemple
MATRICULE PRENOM NOM DATE_NAISSANCE NUM_FAC
Clé étrangère
NUM_FAC NOM NOMBRE_DEPART
EMENT
01 TIC 2
02 SE 3
03 HEC 3
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
96
2. Terminologie de l’approche relationnel
Base de données relationnelle: Une
collection de relations normalisées
portant des noms distincts
Tableau des termes apparentés selon le
contexte où on les utilise
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
97
3. Contraintes d’intégrité
1. Clé d'une relation: toute relation doit
avoir au moins une clé documentée,
c’est ce qu’on appelle la clé primaire
2. Clé étrangère d’une relation: Les clés
étrangères définissent les CI
référentielles
3. Contraintes liées au domaine: les
données doivent vérifiées certaines
conditions pour être cohérentes.
ex pu > 0 ET pu <10 000 29/12/2019
23:39:09
MLD: Passage du MCD au MLD
98
4. Passage du MCD au MLD
Règles de transformation d'un schéma
E/A en un schéma relationnel :
1. Chaque entité donne une relation de
même nom et:
a. Les attributs de l'entité deviennent
attributs de la relation
b. Seuls les attributs simples des
attributs composés sont inclus
c. L'identifiant de l'entité devient clé
primaire de la relation 29/12/2019
23:39:09
MLD: Passage du MCD au MLD
99
4. Passage du MCD au MLD
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
10 4. Passage du MCD au MLD
0
NB: Chaque entité faible I, donne une relation R qui comprend tous les
attributs de I ainsi que la clé de l'entité identifiante. La clé de R est
la concaténation de la clé partielle de I et de la clé de l'entité
identifiante.
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
10 4. Passage du MCD au MLD
1
2. Chaque association de type 1-1 est prise en compte en incluant
la clé primaire d'une des relations comme clé étrangère dans
l'autre relation ; idem pour les attributs éventuels de
l'association.
Si les cardinalités minimales sont non nulles, il est possible de :
• fusionner les deux relations
• y ajouter les attributs de l’association
• choisir comme clé une des deux clés
29/12/2019
23:39:09
MLD: Passage du MCD au MLD
10 4. Passage du MCD au MLD
2
2. Exemple:
29/12/2019
23:39:09