Vous êtes sur la page 1sur 6

ENSSA – Tlemcen @ Département Classe préparatoire 2018-2019 Semestre II

I- Introduction à la notion de connaissance, donnée et d’affecter d’autres utilisateurs et sans permettre l’accès
information simultané de corrompre (‫)افساد‬ les données
La base de données est une notion très fréquentée par la accidentellement.
majorité des ingénieurs (dans leurs études ou profession) qui
La figure suivante montre les parties essentielles d’un SGBD.
vont ou bien l’utilisée ou programmée. Ceci montre bien
l’intérêt d’apprendre les notions principales de base de données. En bas de la figure on voit une présentation de la place ou on va
Les bases de données sont fortement reliées à l’organisation stocker les données. Généralement, on utilise des disques
(entreprise, systèmes …) qui la sollicite. Par exemple : la base (disque dure …) pour stocker ces données. Dans la figure on
de données des comptes dans une banque, la base de données voit aussi un gestionnaire de stockage dont le but est d’obtenir
des étudiants dans une université, la base de données des tests les informations demandées (après une requête) du stock des
dans le projet de fin d’étude …etc. données et de modifier les données dans ce stock lorsqu’on lui
Les notions d’algorithmiques et de programmation vous
demande de le faire par un niveau plus haut du SGBD.
permettent de programmer une base de données en utilisant la
notion de listes chainées (données volatiles) ou bien de fichiers Schéma de
(données permanentes). Cependant, on utilise d’autre notions Interrogation Modifications
modification
dédiées à la programmation et gestion des bases de données à
savoir la modélisation (conceptuelle – logique) et s
l’implémentation (Langage de définition de données LDD –
Langage de manipulation de données LMD– Langage de Processeur
contrôle de données LCD). de requêtes
Gestionnaire
II- Définition de transaction
Gestionnaire
II-1- Base de données de stockage
Une base de données peut être définit comme une collection de
données opérationnelles stockées et utilisées par le système
d’application d’une entreprise particulière.
Une entreprise est un terme général qui désigne n’importe
Stock de
quelle organisation commerciale, scientifique, technique … etc.
Données
par exemple ; une usine, une banque, un hôpital, une université,
un département gouvernementale … etc.
N’importe quelle entreprise doit maintenir un grand nombre de Architecture d’un SGBD
données sur ces opérations (données opérationnelles). Par
exemple ; les données d’un produits, les données d’un compte, Un autre composant du SGBD est le processeur de requêtes
les données d’un patients, les données d’un étudiants, les qui va exécuter (Demande au gestionnaire de stock) les requêtes
données d’un planning … etc. (interrogation ou bien modification). Le gestionnaire de
Le système d’application est le système informatique transaction est responsable de l’intégrité du système. Il doit
permettant de gérer l’entreprise et aider à résoudre ces assurer que plusieurs requêtes exécutées simultanément ne
problèmes. doivent pas s’interférer entre eux et que le système ne doit pas
perdre les données même s’il ya une panne. Il s’interagie (‫)يتفاعل‬
II-2- Système de gestion de base de données SGBD avec le processeur de requêtes puisqu’il doit savoir quelle
Un SGBD est l’ensemble de programmes permettant la donnée est en train d’être utilisée par la requête en cours (pour
manipulation de la base de données. Il doit : éviter les actions de conflits), il peut aussi retarder quelques
- Permettre aux utilisateurs la création de nouvelles bases de requêtes pour que ce conflit ne se produit pas. Il s’interagie
données et spécifier leur schéma (Une structure logique des aussi avec le gestionnaire de stock puisque la protection des
données) en utilisant un langage spécial appelé langage de données inclut généralement le stockage d’un LOG des
définition de données. changements affectant les données. Un LOG est une suite
d’opérations ordonnées contenant un enregistrement (une trace)
- Donner aux utilisateurs la possibilité d’interroger (créer,
rechercher, filtrer, trier …) et de modifier (ajouter, des changements de telle façon que si une pane se produit avant
supprimer, mettre a jour …) une base de donnée en utilisant d’atteindre certains changements le système peut les ré-exécutés
un langage spécial appelé langage de manipulation de après redémarrage.
données (requêtes). En haut de la figure, on remarque trois entrées du SGBD :
- Permettre le stockage d’une très grande quantité de données  Interrogations : C’est des questions sur les données. Ils
(giga-octets et plus) pendant une longue période de temps, sont générés de deux manières :
tout en gardant ces données à l’abri des accidents et des - Interface de requête générique : par exemple à travers des
utilisations non permises et en permettant l’accès efficace requêtes SQL (commande de base) exécuter par le
aux données pour les interrogées et les modifiées. processeur de requêtes.
- Contrôler l’accès aux données provenant de plusieurs - Interface de programme d’application : par exemple à
utilisateurs à la fois sans permettre à un utilisateur travers un programme (graphiques) écrit par un

Module : Base de données Chap1: Introduction ©A.BEKADDOUR page 1


ENSSA – Tlemcen @ Département Classe préparatoire 2018-2019 Semestre II
programmeur permettant d’appeler le SGBD pour - Traitement des transactions: Le SGBD doit inclure un sous-
interroger la base de données. système de contrôle de la concurrence pour faire en sorte que
 Modifications : C’est des opérations permettant la plusieurs utilisateurs essayant de mettre à jour les mêmes
données soient contrôlés. Les résultats de toutes les mises à jour
modification des données. Comme les interrogations elles
de la base de données doivent maintenir la cohérence et la
peuvent être générées par une interface de requêtes validité.
génériques ou bien de programme d’application. - Fournir des services de sauvegarde et de restauration: Si le
 Schéma de modification : ce sont des commandes émises système informatique échoue au milieu d'un processus de mise
par des utilisateurs autorisés appelés parfois à jour complexe, le sous-système de récupération est
administrateurs de base de données qui ont la permission responsable de faire en sorte que la base de données est
de modifier le schéma de la base de données ou bien de restaurée à l'étape où il était avant l’échoue.
créer une nouvelle base de données. II-5 Type de base de données
On classifie une base de données selon sa structure logique et la
II-3 Pourquoi une base de données manière dans laquelle les données sont stockées, organisées et
- Les bases de données peuvent stocker un très grand nombre manipulées. On distingue:
d'enregistrements de manière efficace (ils prennent peu de - base de données fichiers (Flat file) la structure est un
place). fichier.
- Il est très rapide et facile de trouver des informations.
- Il est facile d'ajouter de nouvelles données et de modifier ou
supprimer des données anciennes.
- Les données peuvent être recherchées facilement.
- Les données peuvent être triées facilement.
- Les données peuvent être importées dans d'autres applications
(exemple: publipostage)
- Plus d'une personne peut accéder à la même base de données - base de données hiérarchiques (Hierarchical) la structure
en même temps - multi-accès. est un arbre.
- La sécurité peut être meilleure que dans des dossiers papier.
II-4 Caractéristiques des bases de données
Une base de donnée est caractérisée par:
- Nature auto-descriptive: Un système de base de données
contient non seulement la base de données, mais aussi les
descriptions de la structure des données et des contraintes
(méta-données).
- Isolation entre programme et donnée: Les données ne sont pas
stockées avec le programme. - base de données relationnels (Relational) la structure est
- Plusieurs vues de données: Une vue est un sous-ensemble de une table.
la base de données qui est définie et dédiée pour des utilisateurs
particuliers du système. Plusieurs utilisateurs du système
peuvent avoir des vues différentes du système. Chaque vue peut
contenir seulement les données d'intérêt pour un utilisateur ou
un groupe d'utilisateurs.
- Partage de données et système multiutilisateurs: Un système
de base de données multiutilisateur doit permettre à plusieurs
utilisateurs d'accéder à la base de données en même temps. En
conséquence, le SGBD multiutilisateurs doit disposer de
stratégie de contrôle de concurrence pour assurer que plusieurs
utilisateurs accèdent à la même donnée en même temps et en
s’assurant que les données seront toujours correcte - l'intégrité
des données.
- Contrôle de la redondance des données: chaque élément de
données doit être stocké dans un seul endroit dans la base de
données (pas de duplication).
- Partage de données: la capacité de produire plus
d'informations à partir d'une quantité données connus.
- Application de contraintes d'intégrité: Le SGBD doit fournir
des capacités pour définir et faire respecter certaines contraintes
telles que le type de données, le caractère unique de données,
etc.
- Restriction de l'accès non autorisé: Pas tous les utilisateurs du
système ont les mêmes privilèges d‘accès. Le SGBD doit
fournir un sous-système de sécurité pour créer et contrôler les
comptes d'utilisateurs.

Module : Base de données Chap1: Introduction ©A.BEKADDOUR page 2


ENSSA – Tlemcen @ Département Classe préparatoire 2018-2019 Semestre II
- base de données réseaux (Network) la structure est un VII-1-1- Modélisation par MEA
graphe. - Les symboles utilisés dans cette représentation sont :

Entité Libellé de l’entité

- propriété 1

- propriété 2
Association cardinalité cardinalité
……. Libellé

- Base de données orientées objet (Object-oriented) la propriétés


structure est un objet. - Une entité est un objet distinguable (existence indépendante)
du monde réel (par exemple étudiant note enseignant
module …).
- Une entité possède des attributs - des propriétés qui la
décrivent - (par exemple : nom prénom date de naissance …)
- On distingue deux types d’attributs : les attributs simples vs
composés et les attributs mono-valeurs vs multi-valeurs.
- Un attribut composé est constitué d’une ou plusieurs attribut
simple ou composé (par exemple : Le Nom est composé d’un
prénom, deuxième nom et nom de famille).
- Un attribut mono-valeurs est décrit par une seul valeur (par
exemple : l’âge dune personne) alors qu’un attribut multi-
valeurs est décrit par plusieurs valeurs (par exemple : la
III- Modélisation des bases de données couleur d’un oiseau multi-coloré).
Comme déjà préciser, avant d’implémenter une base de données - Une instance d’entité est une occurrence d’une entité (par
il faut la modéliser. La modélisation consiste à poser la question exemple une instance de l’entité étudiant est :
suivante : qu’es ce que fait votre organisation ? En effet, le BENABDEKADER ZOUBIR 12/12/1992 GHARDAYA
12345-P-16 …).
système le plus évolué (high tech) dans le monde sera mis à
- Un attribut ou un ensemble d’attributs qui identifie d’une
l’écart s’il ne répond pas aux exigences de l’organisation. On manière unique une entité sont appelés identifiant (par
distingue deux types de modélisation : conceptuelle et logique. exemple : le numéro d’inscription est un identifiant de
La modélisation conceptuelle consiste à représenter l’entité étudiant).
graphiquement les exigences de l’organisation sans prendre en - Quand un ensemble d’attributs définissent un identifiant alors
compte l’ordinateur (soft et hard). l’ensemble est appelé identifiant composée (par exemple : le
En plus, la donnée est la partie la plus importante d’une nom, prénom, date de naissance est un identifiant composé
de l’entité étudiant).
application. Une structure de donnée puissante et précise permet
- Un identifiant composé doit être minimal (aucun attribut de
de réaliser des applications puissantes et précises. La l’identifiant composé ne doit être un identifiant).
modélisation logique consiste à convertir le modèle conceptuel - Un identifiant est toujours souligné dans le MCD.
(modèle résultant de la modélisation conceptuelle) en un - On appelle domaine d’attributs l’ensemble des valeurs qu’un
modèle reflétant la structure de donnée utilisée. attribut peut avoir (par exemple : l’attribut âge de l’entité
employé est l’intervalle des valeurs entières entre 18 et 65).
- Un attribut composé pouvant avoir n valeurs de domaines D1,
III-1- Modélisation conceptuelle
D2 … Dn, alors le domaine de l’attribut est D1 x D2 x … x Dn.
- La modélisation conceptuelle est la représentation graphique - Prenant le cas d’une entreprise :
des différentes entités du monde réel ainsi que la relation entre
ces entités en respectant certains symboles de représentation
Entité Attributs
(Ce n’est pas la base de données).
Department Dept_id, Nom,
- Le résultat de la modélisation conceptuelle est appelé MCD
nombre_employes, Chef, …
(Modèle Conceptuel de Données).
Projet Proj_id, Nom, Duree,
- Le MCD est une description concise (‫ )بإيجاز‬des exigences de
Emplacement, Dept_control,
l’utilisateur.

- Le MCD ne comporte pas des détails sur l’implémentation.
- Le MCD doit être facile à comprendre (il va être utilisé pour Employe Emp_id, Nom (P,D,F), NSS,
communiquer avec des utilisateurs hors domaine technique). Adresse, Salaire, …
- On distingue plusieurs représentations de la modélisation
conceptuelle dont les plus connus sont: - La relation entre entités est appelée association (par exemple
- Modélisation par MEA (Modèle Entité Association) l’association prendre entre étudiant et module).
- Modélisation par MER (Modèle entité relation) - Une instance association est une occurrence de l’association
(par exemple l’étudiant - BENABDEKADER ZOUBIR

Module : Base de données Chap1: Introduction ©A.BEKADDOUR page 3


ENSSA – Tlemcen @ Département Classe préparatoire 2018-2019 Semestre II
12/12/1992 GHARDAYA 12345-P-16 - prend le module - On parle de contrainte de participation lorsque l’existence
-INFORMATIQUE INFO4-). d’une instance entité dépend de l’existence d’une instance
- L’association entre entités est soumise à des règles qu’on association.
appelle contraintes. - si on prend l’exemple de l’association suivante :
- On distingue deux types de contraintes : Cardinalités et Departement
Employe
contraintes de participation. 1,1 Travailler 1,N
- La cardinalité est un couple de valeur que l'on trouve entre Emp_id Dept_id
chaque entité et ses associations liées. Donc, pour une Nom Nom
association de 2 entités, il y a 4 cardinalités (2 de chaque côté). …….. 1,1 1,1 ….
Entité 1 Entité 2
min,max Association min,max Gérer

Un employé doit travailler dans un département, donc


- Pour les associations à 2 entités, les cardinalités sont des l’existence de l’instance entité employe dépend de l’existence
valeurs qui permettent d’indiquer combien de fois au minimum de l’instance association Travailler. Dans cet exemple on dit
et au maximum une occurrence d'entité peut être liée à une autre que l’entité employe « participe totalement » dans
occurrence d'entité. l’association Travailler. On dit aussi que l’association
- Les cardinalités traduisent des règles de gestion. Travailler introduit une « dépendance d’existence » sur
a- La cardinalité Min : Elle est exprimée presque toujours par l’entité employe.
l’une des deux valeurs 0 ou 1. Maintenant, il y a quelques employés seulement qui gèrent le
Prenant le cas de la relation entre Client et Produit. Si la règle département, on dit que la participation est partielle.
de gestion est : tout client doit commander au moins un
produit alors: - On distingue trois types d’associations selon la dépendance :
a- Les associations hiérarchiques [1,n] :
Ce sont les associations où d'un côté la cardinalité maximale est
à 1 et de l'autre côté la cardinalité maximale est à n.

Si maintenant la règle de gestion est : Enregistrer les clients


même s’ils ne commandent pas de produits alors :

C'est un lien de dépendance fonctionnelle. On dit que B dépend


fonctionnellement de A.
Un exemple est la relation entre un fils et son père :

Trouver la cardinalité minimale pour l’entité produit ?


Peut-il exister dans la base de données des produits qui
n'ont jamais été commandés?
b- La cardinalité Max : Elle est exprimée presque toujours par
l’une des deux valeurs 1 ou N. b- Les associations non hiérarchiques [n,n] :
Prenant le cas de la relation entre Salarié et Service. Si la règle Ce sont les associations où la cardinalité maximale est à n dans
de gestion est : Un salarié est affecté au plus à un seul service et les deux cotés.
dans un service sont affectés plusieurs salariés alors:

Prenant le cas de la relation entre élève et option avec la règle c- Les associations [1,1] :
de gestion: Un élève peut suivre au maximum 3 options alors : Cas exceptionnel.

-On distingue 3 types d’associations selon le nombre d’entités :


a- Les associations réflexives (unaire):
Une association réflexive est une association reliant des
On remarque que la cardinalité Max peut être une valeur limitée occurrences de la même entité.
(rarement trouvée).
Trouver les cardinalités minimales des quatre entités (Salarié,
Service, Elèves et Option) ?

Module : Base de données Chap1: Introduction ©A.BEKADDOUR page 4


ENSSA – Tlemcen @ Département Classe préparatoire 2018-2019 Semestre II

Laquelle des deux associations (encadrer, composition) est


réflexive hiérarchique ?
b- Les associations de dimension 2 (binaire):
C’est une association qui peut relier 2 entités exactement.
L’association réflexive est un cas particulier des associations de Prenant le cas d’exemple suivant :
2 dimensions. Un hôpital, qui est caractérisé par un numéro identifiant, un
nom, un numéro de téléphone et une adresse, possède plusieurs
laboratoires de recherche.
Un laboratoire de recherche, qui se trouve dans un hôpital, est
caractérisé par un numéro identifiant et un nom.
Un médecin est caractérisé par un numéro identifiant, un nom,
c- Les associations de dimension 3(ternaire) ou plus: un prénom et un numéro de téléphone.
C’est une association qui peut relier plus de 2 entités, le plus Un médecin peut être médecin traitant ou médecin chercheur.
souvent trois (ternaire). Un médecin chercheur est rattache a un laboratoire de
recherche dans l'hôpital.
Un médecin traitant peut prescrire plusieurs ordonnances
médicales.
Une ordonnance médicale est caractérisée par un numéro
identifiant et une date.
Une ordonnance médicale est prescrite par un seul médecin
traitant et elle concerne un patient.
Un patient est caractérisé par un numéro identifiant, un nom,
un prénom, un téléphone et une adresse.
Une ordonnance médicale regroupe plusieurs médicaments
prescrits.
Un médicament est caractérisé par un code identifiant et un
nom.
Pour chaque médicament prescrit, le médecin traitant précise le
-Pour un ouvrier, on peut avoir plusieurs pièces différentes à la dosage et le mode d'utilisation de ce médicament.
même date (il peut fabriquer plusieurs types de pièces le même Construire le modèle conceptuel de données (MCD)
jour). correspondant.
-Une pièce peut être fabriquée par plusieurs ouvriers différents
le même jour.
-A des dates différentes, un même ouvrier peut fabriquer les
mêmes pièces.
- En général :

Module : Base de données Chap1: Introduction ©A.BEKADDOUR page 5


ENSSA – Tlemcen @ Département Classe préparatoire 2018-2019 Semestre II

Hôpital Lab_rech Exemple :


Num_id 1,n Se trouve 1,1 Num_id
Nom Nom
Tel
Adresse

1,n

Medecin 1,1 Rattache


Medecin_cher
Num_id
Nom
Prenom
Tel
ordonnance
Num_id
date
1,n prescrire 1,1
Medecin_trait

1,1 1,n
1,n patient
1,n concerne
Num_id
Nom
Prenom
Tel regrouper
Adresse

Réaliser le modèle entité relation de l’exemple de l’hôpital ?


Preciser Medicament
1,1 1,1
Dosage code_id III-2- Modélisation logique
Mode_utilis Nom La modélisation logique consiste à convertir le modèle
conceptuel en un modèle proche de l’ordinateur (tient compte
- Dans cet exemple, il y à plusieurs notions à définir : des choix concernant le système de gestion de la base de
- On remarque que l’entité médecin est divisée en deux entités données) qu’on appel MLD (Modèle logique de donnée). Le
(appelées entités faible –weak entity) médecin traitant et modèle logique le plus utilisé est le modèle Relationnel associé
médecin chercheur. à la base de données relationnel (Oracle, Informix, SQLserver,
- Une entité faible est une entité qui ne peut exister que si elle ..., Access, Foxpro, Paradox, ...).
est référencier à une autre entité. Dans notre exemple un
médecin traitant ne peut exister que s’il est médecin en
premier temps (respecter la représentation graphique par flèche
et le double rectangle). L’entité Médecin est dite entité forte.
-On remarque aussi que l’association Préciser possède elle
aussi des attributs.
VII-1-2- Modélisation par MER
Les symboles utilisés dans cette représentation sont :
Entité Caractéristique1 Caractéristique2

Caractéristique3
Libellé de l’entité

Caractéristique… Caractéristique4

Relation
Libellé

Caractéristique

Entité
Libellé de l’entité
faible

Module : Base de données Chap1: Introduction ©A.BEKADDOUR page 6

Vous aimerez peut-être aussi