Cours BDD.pptx

Présenté par
Mr Sow Thierno Abdoul Rahim
1. Introduction aux Base de données et SGBD
CHAPITRE
2. Algèbre relationnel et les requêtes SQL
3. Application avec Microsoft office Access
Objectif
• Savoir qu’est ce qu’un SGBD;
• Comprendre l’apport des bases de données;
• Connaître le modèle de données;
• Connaître le modèle relationnel;
• Mettre en œuvre une base de données : prise en compte
des problème d’optimisation, de gestion des droits
d’accès.
• Comprendre les problème liés à la conception de gros
systèmes d’information.
BASE DE DONNÉES
Cours 1: Introduction au Base de
données et SGBD
I. LES INSUFFISANCES DE L’APPROCHE
TRADITIONNELLE « Fichiers classiques »
Dans une approche traditionnelle d’une application
informatique, la structure, le contenu, ainsi que les supports de
fichiers sont définis dans un ou plusieurs programmes et sont
fonction de ceux-ci.
Mais ces fichiers qui ont été construits pour répondre aux besoins
de l’application, possèdent la plupart du temps des éléments
communs.
Ainsi, toute modification d’une donnée doit être opérée
plusieurs fois, afin de maintenir la cohérence entre différents
fichiers.
Exemple :
Saisie de données Traitements Résultats
L’utilisation de cette approche comporte les principaux défauts
suivants :
1. Il y’a redondance d’informations dans les fichiers.
2. A chaque mise à jour un programme s’exécute.
3. Les programmes exigent des enregistrements dont la
structure est fonction de la nature de l’application.
CONCEPT DE BASE DE DONNÉES
A cause des insuffisances de l’approche traditionnelle, une
tendance s’est développée, pour combiner toutes les
informations importantes de l’entreprise dans un seul
« réservoir de données, qui n’est en fait qu’un ensemble
organisé et intégré de données. Cette base de données servira au
stockage des données et sera entièrement centralisée.
Dans l’idéal il n’existe qu’un exemplaire de chaque élément de
données.
La principale caractéristique de cette nouvelle approche de
gestion de donnée est le renversement de la hiérarchie
« Traitement – Donnée » ; c’est-à-dire le fait de briser la
dépendance entre les traitements et les données.
Saisie de données Stockage Extraction Utilisation
L’apport des concepts de base de données devra assurer les
grandes fonctions suivantes :
1. L’intégration des données afin d’éviter l’incohérence de
données dupliquées.
2. La séparation entre les moyens de stockage physique des
données et la logique des programmes.
3. Un contrôle unique de toutes les données afin de permettre
l’utilisation simultanée par plusieurs utilisateurs.
4. Des facilités pour le stockage, la modification, la
réorganisation, la consultation … , sans restriction aux
utilisateurs.
5. Des contrôles de sécurité afin d’empêcher l’accès illégal à
certaines données.
6. Des contrôles d’intégrité pour prévenir de fausses
manipulations.
7. La compatibilité avec les principaux langages de
programmation.
III. Définitions :
On définit une base de données comme un ensemble de
données structuré, enregistrées sur les support accessibles par
l’ordinateur, pour satisfaire simultanément plusieurs
utilisateurs de façon sélective et en temps opportun.
Autrement, base de données (BD) = ensemble de données
accessibles et exploitables au moyen d’un ensemble de
programmes.
Une BD est faite pour enregistrer des faits, des opérations au
sein d'un organisme (administration, banque, université,
hôpital, ...).
Quelles données ?
Les données sont omniprésentes autour de nous ...
• Base de données sur des films.
• Base de données bibliothécaire.
• Location de voitures / Réservation de place d’avion
• Sécurité sociale (carte Chifa), Hôpitaux, ...
• Communications téléphoniques (opérateurs).
• Systèmes d’information géographique.
Exemple :
Les données sont omniprésentes autour de nous ... dans l’entreprise
•Les clients
•Les produits
•Les commandes
•Les factures
IV. Fonctions d’un SGBD
Le logiciel qui permet à un utilisateur d’inter-agir avec une telle base de données est
un système de gestion de base de données (SGBD) qui permet principalement
d’organiser les données sur le support périphérique (disque, disquette, bande etc.) et
fournit les procédures de recherche et de sélection de ces mêmes données.
1. La fonction description
Le SGBD doit mettre à la disposition de l’utilisateur un outil pour décrire l’ensemble
des données qui seront stockées dans la base.
2. La fonction utilisation
Elle a pour but d’offrir à l’utilisateur une interaction avec la base de données sous
forme de dialogue pour sélectionner et mettre à jour les données.
3. La fonction intégrité
Le SGBD doit offrir à l’utilisateur la possibilité de définir des règles qui permettent de
maintenir l’intégrité de la base de données.
4. La fonction confidentialité
Le SGBD doit offrir des mécanismes permettant de vérifier les droits d’accès des
utilisateurs.
5. La fonction concurrence d’accès
Le SGBD doit offrir des mécanismes qui permettent de détecter les cas où il y’aurait
conflit d’accès pour une même donnée par
des utilisateurs différents et de traiter ces cas de conflits.
V. Les différents niveaux de représentation d’une base de données
Il existe 3 niveaux de représentation d’une base de données
• Le niveau interne avec le schéma physique.
• Le niveau conceptuel avec le schéma conceptuel.
• Le niveau externe avec les schémas externes qui correspondent à
différents groupes d’utilisateurs.
6. La fonction sécurité de fonctionnement
En cas d’incident ayant pour origine le matériel ou le logiciel la base de
données n’est plus opérationnelle ; afin d’assurer le redémarrage du système
lorsque l’incident a été supprimé, le SGBD doit permettre la prise de point de
contrôle pour remettre la base de données dans un état correct.
Méthodologie de conception d’une BD
DIFFERENTS TYPES DE MODELES DE DONNEES
Modèles de données
Un modèle de données est un ensemble de concepts pour décrire les
données du monde réel, les liens entre les données et la sémantique
des données.
Qu’est-ce qu’un modèle de données ? Tout SGBD est conçu
autour d’un modèle de données bien défini. Il s’agit de la
combinaison de trois éléments :
– Une structure, qui correspond à l’organisation logique des
données, la forme sous laquelle les utilisateurs vont les percevoir ou
les représenter.
– Des contraintes d’intégrité, que l’on peut définir sur les données,
afin d’en assurer l’intégrité et la cohérence avec le monde réel et les
besoins des applications.
– Des langages de manipulation des données, pour les mises à
jour et les interrogations.
On distingue généralement deux catégories de modèles de données :
 Les modèles orientés information ->définition du schéma conceptuel
modèle entité-association et ses dérivés (MERISE, ...)
 les modèles orientés données ->mise-en-œuvre du SGBD
modèle relationnel, modèle hiérarchique, modèle réseau
2.2 Modèle Conceptuel de données (MCD)
Après la phase d’analyse, nous pouvons commencer à représenter les
informations sous forme conceptuelle. Le modèle Conceptuel de données
(MCD) que nous allons construire contient deux éléments principaux: les
entités et les relations.
Le modèle Entité-Association
EA en français, ER en anglais (pour Entity Relationship), c’est un
formalisme retenu par l'ISO pour décrire l'aspect conceptuel des données à
l’aide d’entités et d’associations.
– Structure : Entités (avec des attributs) et associations entre des entités.
– Contraintes d’intégrité : identifiants, cardinalités sur les associations.
– Manipulation : aucun.
La construction du MCD se fait en quatre étapes:
a. repérage des entités,
b. construction des entités, choix des propriétés,
c. Construction des relations,
d. Choix des cardinalités.
1. Entité et type d’entité
Entité : représentation d’un objet du monde réel ayant une existence propre
Type d’entités (TE) : représentation d’un ensemble d’entités perçues comme
similaires et ayant les mêmes caractéristiques
Repérage des entités :
Une entité est un composant du problème : une personne, une facture,
un livre, ... C'est la représentation d'un objet matériel ou immatériel
pourvu d'une existence propre et conforme aux choix de gestion de
l'entreprise. Comme dit plus haut, ce que l'on considère comme entité
est un type général (ex : l'entité personne représente toutes les
personnes) à ne pas confondre avec une occurrence d'entité (Jean
Martin étant une personne, on le considère comme une occurrence de
l'entité personne). Une entité doit avoir une existence
indépendamment de toute autre entité.
Association et type d’associations
 Association : représentation d’un lien entre plusieurs objets
 Type d’associations (TA) : représentation d’un ensemble
d’associations ayant la même sémantique et décrites par les
mêmes caractéristiques.
3. Attributs
décrivent les propriétés associées à :
 un type d’entités
 une association
Une association est caractérisée par :
 Un rôle pour chacun des types d’entités;
 Un nom éventuellement suivi d’une flèche précisant le sens de
lecture;
 Des cardinalités indiquant le nombre d’objets li´es par une
association;
Dans une association chaque objet joue un rôle déterminé,
association binaire : 2 rôles
4. Cardinalité:
Elles expriment le nombre de fois ou l’occurrence d’une entité
participe aux occurrences de la relation.
La cardinalité minimale (0 ou 1) exprime le nombre de fois
minimum qu’une occurrence d’une entité participe aux
occurrences d’une relation.
La cardinalité maximale (1 ou n) exprime le nombre de fois
maximal qu’une occurrence d’une entité participe aux
occurrences de la relation.
Contraintes de cardinalité
 Une personne peut ne pas avoir de voiture, en avoir 1, 2,· · ·
,n : 0 :n
 Une voiture a un et un seul propriétaire : 1 :1
Cours BDD.pptx
Deux rôles (au moins) lient le même type d’entité
Une personne femme est mariée à personne Marie
L’identifiant
Une de ces propriétés a un rôle bien précis, c’est l’identifiant
nommé aussi la clé.
L’identifiant permet de connaître de façon sûre et unique
l’ensemble des propriétés qui participent à l’entité. Par exemple,
le fait de connaître la ville d’un client permet il de connaître son
nom ? La réponse est non. La connaissance du nom du client
permet elle de connaître sa ville ? La réponse est toujours non,
car en cas d’homonymie la confusion entre un Durand Max et un
Durand Raymond est totale.
Il faut donc trouver, ou inventer, une propriété qui lorsque sa
valeur est connue permet la connaissance de l’ensemble des
valeurs qui s’y rattachent de façon formelle.
Ainsi, lorsque le numéro du client est connu, son nom, son
prénom et toutes les valeurs des autres propriétés qui s’y
rattachent sont connues de façon sûre et unique.
Introduction au Modèle Logique des Données
Le Modèle Logique des Données (MLD) est la suite normale du processus
Merise. Son but est de nous rapprocher au plus près du modèle physique.
Pour cela, nous partons du Modèle Conceptuel des Données et nous lui
enlevons les relations, mais pas n’importe comment, il faut en effet respecter
certaines règles. Voici la procédure à suivre.
1. Cas (0, n), (1,1) ou (1,n), (0,1)
Voici un modèle conceptuel de départ :
Nous devons supprimer la relation Elever, cela se réalise de façon tout à fait
mécanique. L’entité ayant la cardinalité
de type 1,1 ou 0,1 absorbe l’identifiant de l’entité la plus forte (0, n ou 1, n).
Cet identifiant est alors appelé la clé étrangère.
Voici le Modèle Logique des Données découlant du Modèle conceptuel
précédent :
2. Cas (0,n), (0,n) ou (1,n), (1,n)
Illustrons ce cas sur le Modèle Conceptuel des Données suivant :
Dans le cas où la cardinalité maximale est n de chaque côté de la relation,
celle-ci se transforme en entité et absorbe les identifiants de chaque entité
reliée. Les identifiants ainsi absorbés forment la nouvelle clé de l’entité.
Cette nouvelle clé est donc formée par la concaténation des clés étrangères
des entités reliées.
4. Règles simples de passage du MCD au MLD
• L’entité qui possède la cardinalité maximale égale à 1,
recevra l’identifiant ou les identifiants des entités ayant les
cardinalités maximales les plus fortes.
• Les relations ayant toutes leurs entités reliées avec des
cardinalités maximales supérieures à 1, se transformeront
en entité en absorbant les identifiants des entités jointes.
• Toute relation porteuse de propriétés se transformera en
entité et absorbera comme clé étrangère les identifiants
des entités qui lui sont liées.
Modèle Physique des Données
Construire le Modèle Physique des Données consiste à
transformer le Modèle Logique des Données en une suite
de
relations. Cette étape finalise le processus de traitement
des données. L’implémentation des bases de données
peut
Exercice d’Application
• On veut représenter la gestion de la SACEM :
Nous devons représenter :
 Des livres avec : numéro du livre (ISBN), Titre du livre
 Des auteurs avec : Numéro de l’auteur, nom de l’auteur
 Des éditeurs avec : Numéro d’éditeur, nom de l’éditeur
 Des dépôts avec : Numéro de dépôt, nom du dépôt
• Attention : ici un « livre » n’est pas le « livre physique » (un
exemplaire) mais plutôt une « édition »
• L’investigation du domaine a permis de définir les règles
suivantes :
 un livre peut être :
 Écrit par plusieurs auteurs
 Édité par plusieurs éditeurs, mais une seul fois par chacun
d’entre eux. Pour distinguer, on donne alors l’année éditions
 Stocké dans plusieurs dépôts, et cela pour chaque éditeur.
• Chaque livre stocké est stocké avec une quantité définie.
• Donner le schéma entité-association et les éventuels contraintes
d’intégrité correspondant à cet énoncé.
Exercice:
Un historien souhaite établir des statistiques sur des soldats de
la Première Guerre mondiale. Pour chaque soldat, outre l'état-
civil, il souhaite avoir la trace :
 de la date de son décès si celui-ci est survenu suite aux
combats
 des blessures reçues (type et date de la blessure, en plus de la
bataille où elle a été infligée. Les batailles seront référencées
dans une liste comportant le lieu, les dates de début et de fin)
 des grades obtenus (avec les dates)
 de l'unité de rattachement (avec les dates)
Etablir le MCD, le MLD et le MPD adéquats.
• Schéma : description des données selon un modèle
(ensemble de concepts qui permettent de décrire la structure
de la BD et ses contraintes)
• Instance de BD : Etat de la BD à un instant donné (données
dont la description est réalisé par le schéma)
• Modèles de données de différents niveaux :
– Conceptuel (description du SI)
– Logique (interface avec le SGBD)
– Physique (fichiers),
Au niveau logique, les modèles proposent :
• Un langage de définition du données (structure et
contraintes) (LDD);
• Un langage de manipulation de données (LMD) (Langage
de requêtes);
Les SGBD permettent de construire des interfaces
graphiques, à formulaires,
Modèle relationnel
• Les principaux concepts :
– Relation / Table
– Identifiant / Clé primaire
– Identifiant externe / Clé étrangère
– Domaine
–
Dans un schéma relationnel, on a besoin de systèmes spécifiques pour
conserver et manipuler les données.
- Les données sont représentées dans des tables
• Les lignes sont des entités
• Les colonnes sont des propriétés
- Le découpage en tables demande une analyse et une optimisation
- L’analyse doit aller au-delà des besoins immédiats (abstraction)
Base de données = ensemble de tables
- Chaque table a un nom unique (ex : Film)
- Chaque table contient les données relatives à des entités de même nature.
- Chaque ligne (enregistrement) d’une table décrit les données relatives à
une entité.
- Chaque colonne d’une table décrit une propriété des entités (ex : Prix).
- Les lignes d’une table sont distinctes.
- Les noms de table et de colonnes constituent le schéma de la base.
- Les lignes (entités) constituent le contenu de la base.
DESCRIPTION DES DONNÉES – CONCEPTS DE BASE
DESCRIPTION DES DONNÉES – RÈGLES
IDENTIFICATION DES DONNÉES – CLÉ PRIMAIRE
• identifiant unique
• pas de valeur nulle
Il ne peut y avoir deux tuples
ATTRIBUTS COMPLEXES MONOVALUÉS
ATTRIBUTS SIMPLES MULTIVALUÉS
1 sur 41

Recommandé

Si bdd par
Si bddSi bdd
Si bddkacem kouninef
3.5K vues55 diapositives
base de données -note de cours par
base de données -note de cours base de données -note de cours
base de données -note de cours Yassine Badri
2.8K vues33 diapositives
Cours1 2 gdmm par
Cours1 2 gdmmCours1 2 gdmm
Cours1 2 gdmmAbdelbaki IpNöse
562 vues29 diapositives
Introduction aux bases de données par
Introduction aux bases de donnéesIntroduction aux bases de données
Introduction aux bases de donnéesAbdoulaye Dieng
2.6K vues51 diapositives
Cours Base de données relationnelles par
Cours Base de données relationnellesCours Base de données relationnelles
Cours Base de données relationnellesAymen Kasmi
3.3K vues39 diapositives
Visite guidée au pays de la donnée - Du modèle conceptuel au modèle physique par
Visite guidée au pays de la donnée - Du modèle conceptuel au modèle physiqueVisite guidée au pays de la donnée - Du modèle conceptuel au modèle physique
Visite guidée au pays de la donnée - Du modèle conceptuel au modèle physiqueGautier Poupeau
2.2K vues71 diapositives

Contenu connexe

Similaire à Cours BDD.pptx

Chap1Concepts-FondamentauxBD.pdf par
Chap1Concepts-FondamentauxBD.pdfChap1Concepts-FondamentauxBD.pdf
Chap1Concepts-FondamentauxBD.pdfBoubakerMedanas
12 vues37 diapositives
Bd relationnelles par
Bd relationnellesBd relationnelles
Bd relationnellesmakram05
1.6K vues19 diapositives
Base de Données Chapitre I .pptx par
Base de Données Chapitre I .pptxBase de Données Chapitre I .pptx
Base de Données Chapitre I .pptxAbdoulayeTraore48
17 vues20 diapositives
java BDD jdbc par
java BDD jdbcjava BDD jdbc
java BDD jdbcvangogue
746 vues49 diapositives
Cours_BD_M1-EAI-2023.pdf par
Cours_BD_M1-EAI-2023.pdfCours_BD_M1-EAI-2023.pdf
Cours_BD_M1-EAI-2023.pdfstephanecoulibaly3
3 vues118 diapositives
Conception des bases de données relationelles par
Conception des bases de données relationellesConception des bases de données relationelles
Conception des bases de données relationellesYassine Badri
1.6K vues29 diapositives

Similaire à Cours BDD.pptx(20)

Bd relationnelles par makram05
Bd relationnellesBd relationnelles
Bd relationnelles
makram051.6K vues
java BDD jdbc par vangogue
java BDD jdbcjava BDD jdbc
java BDD jdbc
vangogue746 vues
Conception des bases de données relationelles par Yassine Badri
Conception des bases de données relationellesConception des bases de données relationelles
Conception des bases de données relationelles
Yassine Badri1.6K vues
Intro_modul_et_SI_chapt0.ppt par Idriss22
Intro_modul_et_SI_chapt0.pptIntro_modul_et_SI_chapt0.ppt
Intro_modul_et_SI_chapt0.ppt
Idriss222 vues
Intro SGBD et BD.ppt par Bahaty1
Intro SGBD et BD.pptIntro SGBD et BD.ppt
Intro SGBD et BD.ppt
Bahaty122 vues
Base de donnees Avancees et Intro à NoSQL.ppt par Idriss22
Base de donnees Avancees et Intro à  NoSQL.pptBase de donnees Avancees et Intro à  NoSQL.ppt
Base de donnees Avancees et Intro à NoSQL.ppt
Idriss227 vues

Dernier

Webinaire de formation sur les REL par
Webinaire de formation sur les RELWebinaire de formation sur les REL
Webinaire de formation sur les RELMokhtar Ben Henda
8 vues98 diapositives
La conscience d'être libre est-elle illusoire ? (G. Gay-Para) par
La conscience d'être libre est-elle illusoire ? (G. Gay-Para)La conscience d'être libre est-elle illusoire ? (G. Gay-Para)
La conscience d'être libre est-elle illusoire ? (G. Gay-Para)Gabriel Gay-Para
32 vues54 diapositives
Formation M2i - Génération IA : Prenez le train de l'avenir par
Formation M2i - Génération IA : Prenez le train de l'avenirFormation M2i - Génération IA : Prenez le train de l'avenir
Formation M2i - Génération IA : Prenez le train de l'avenirM2i Formation
7 vues38 diapositives
INCENDIE_New1.ppt par
INCENDIE_New1.pptINCENDIE_New1.ppt
INCENDIE_New1.pptAcadmieSecourisme
5 vues120 diapositives
La dissertation par
La dissertationLa dissertation
La dissertationGabriel Gay-Para
36 vues19 diapositives
Exercice de révision SE - IPSET.pdf par
Exercice de révision SE - IPSET.pdfExercice de révision SE - IPSET.pdf
Exercice de révision SE - IPSET.pdfMedBechir
10 vues2 diapositives

Dernier(11)

La conscience d'être libre est-elle illusoire ? (G. Gay-Para) par Gabriel Gay-Para
La conscience d'être libre est-elle illusoire ? (G. Gay-Para)La conscience d'être libre est-elle illusoire ? (G. Gay-Para)
La conscience d'être libre est-elle illusoire ? (G. Gay-Para)
Formation M2i - Génération IA : Prenez le train de l'avenir par M2i Formation
Formation M2i - Génération IA : Prenez le train de l'avenirFormation M2i - Génération IA : Prenez le train de l'avenir
Formation M2i - Génération IA : Prenez le train de l'avenir
M2i Formation7 vues
Exercice de révision SE - IPSET.pdf par MedBechir
Exercice de révision SE - IPSET.pdfExercice de révision SE - IPSET.pdf
Exercice de révision SE - IPSET.pdf
MedBechir10 vues
Conception et développement d'une marketplace basée sur l'architecture micros... par Adem Amen Allah Thabti
Conception et développement d'une marketplace basée sur l'architecture micros...Conception et développement d'une marketplace basée sur l'architecture micros...
Conception et développement d'une marketplace basée sur l'architecture micros...
Téophile Alexandre Steinlen.Peintre anarchiste du XIXe sieècle. par Txaruka
Téophile Alexandre Steinlen.Peintre anarchiste du XIXe sieècle.Téophile Alexandre Steinlen.Peintre anarchiste du XIXe sieècle.
Téophile Alexandre Steinlen.Peintre anarchiste du XIXe sieècle.
Txaruka45 vues

Cours BDD.pptx

  • 1. Présenté par Mr Sow Thierno Abdoul Rahim
  • 2. 1. Introduction aux Base de données et SGBD CHAPITRE 2. Algèbre relationnel et les requêtes SQL 3. Application avec Microsoft office Access
  • 3. Objectif • Savoir qu’est ce qu’un SGBD; • Comprendre l’apport des bases de données; • Connaître le modèle de données; • Connaître le modèle relationnel; • Mettre en œuvre une base de données : prise en compte des problème d’optimisation, de gestion des droits d’accès. • Comprendre les problème liés à la conception de gros systèmes d’information.
  • 4. BASE DE DONNÉES Cours 1: Introduction au Base de données et SGBD
  • 5. I. LES INSUFFISANCES DE L’APPROCHE TRADITIONNELLE « Fichiers classiques » Dans une approche traditionnelle d’une application informatique, la structure, le contenu, ainsi que les supports de fichiers sont définis dans un ou plusieurs programmes et sont fonction de ceux-ci. Mais ces fichiers qui ont été construits pour répondre aux besoins de l’application, possèdent la plupart du temps des éléments communs. Ainsi, toute modification d’une donnée doit être opérée plusieurs fois, afin de maintenir la cohérence entre différents fichiers.
  • 6. Exemple : Saisie de données Traitements Résultats
  • 7. L’utilisation de cette approche comporte les principaux défauts suivants : 1. Il y’a redondance d’informations dans les fichiers. 2. A chaque mise à jour un programme s’exécute. 3. Les programmes exigent des enregistrements dont la structure est fonction de la nature de l’application. CONCEPT DE BASE DE DONNÉES A cause des insuffisances de l’approche traditionnelle, une tendance s’est développée, pour combiner toutes les informations importantes de l’entreprise dans un seul « réservoir de données, qui n’est en fait qu’un ensemble organisé et intégré de données. Cette base de données servira au stockage des données et sera entièrement centralisée. Dans l’idéal il n’existe qu’un exemplaire de chaque élément de données.
  • 8. La principale caractéristique de cette nouvelle approche de gestion de donnée est le renversement de la hiérarchie « Traitement – Donnée » ; c’est-à-dire le fait de briser la dépendance entre les traitements et les données. Saisie de données Stockage Extraction Utilisation
  • 9. L’apport des concepts de base de données devra assurer les grandes fonctions suivantes : 1. L’intégration des données afin d’éviter l’incohérence de données dupliquées. 2. La séparation entre les moyens de stockage physique des données et la logique des programmes. 3. Un contrôle unique de toutes les données afin de permettre l’utilisation simultanée par plusieurs utilisateurs. 4. Des facilités pour le stockage, la modification, la réorganisation, la consultation … , sans restriction aux utilisateurs. 5. Des contrôles de sécurité afin d’empêcher l’accès illégal à certaines données. 6. Des contrôles d’intégrité pour prévenir de fausses manipulations. 7. La compatibilité avec les principaux langages de programmation.
  • 10. III. Définitions : On définit une base de données comme un ensemble de données structuré, enregistrées sur les support accessibles par l’ordinateur, pour satisfaire simultanément plusieurs utilisateurs de façon sélective et en temps opportun. Autrement, base de données (BD) = ensemble de données accessibles et exploitables au moyen d’un ensemble de programmes. Une BD est faite pour enregistrer des faits, des opérations au sein d'un organisme (administration, banque, université, hôpital, ...).
  • 11. Quelles données ? Les données sont omniprésentes autour de nous ... • Base de données sur des films. • Base de données bibliothécaire. • Location de voitures / Réservation de place d’avion • Sécurité sociale (carte Chifa), Hôpitaux, ... • Communications téléphoniques (opérateurs). • Systèmes d’information géographique. Exemple : Les données sont omniprésentes autour de nous ... dans l’entreprise •Les clients •Les produits •Les commandes •Les factures
  • 12. IV. Fonctions d’un SGBD Le logiciel qui permet à un utilisateur d’inter-agir avec une telle base de données est un système de gestion de base de données (SGBD) qui permet principalement d’organiser les données sur le support périphérique (disque, disquette, bande etc.) et fournit les procédures de recherche et de sélection de ces mêmes données. 1. La fonction description Le SGBD doit mettre à la disposition de l’utilisateur un outil pour décrire l’ensemble des données qui seront stockées dans la base. 2. La fonction utilisation Elle a pour but d’offrir à l’utilisateur une interaction avec la base de données sous forme de dialogue pour sélectionner et mettre à jour les données. 3. La fonction intégrité Le SGBD doit offrir à l’utilisateur la possibilité de définir des règles qui permettent de maintenir l’intégrité de la base de données. 4. La fonction confidentialité Le SGBD doit offrir des mécanismes permettant de vérifier les droits d’accès des utilisateurs. 5. La fonction concurrence d’accès Le SGBD doit offrir des mécanismes qui permettent de détecter les cas où il y’aurait conflit d’accès pour une même donnée par des utilisateurs différents et de traiter ces cas de conflits.
  • 13. V. Les différents niveaux de représentation d’une base de données Il existe 3 niveaux de représentation d’une base de données • Le niveau interne avec le schéma physique. • Le niveau conceptuel avec le schéma conceptuel. • Le niveau externe avec les schémas externes qui correspondent à différents groupes d’utilisateurs. 6. La fonction sécurité de fonctionnement En cas d’incident ayant pour origine le matériel ou le logiciel la base de données n’est plus opérationnelle ; afin d’assurer le redémarrage du système lorsque l’incident a été supprimé, le SGBD doit permettre la prise de point de contrôle pour remettre la base de données dans un état correct.
  • 15. DIFFERENTS TYPES DE MODELES DE DONNEES
  • 16. Modèles de données Un modèle de données est un ensemble de concepts pour décrire les données du monde réel, les liens entre les données et la sémantique des données. Qu’est-ce qu’un modèle de données ? Tout SGBD est conçu autour d’un modèle de données bien défini. Il s’agit de la combinaison de trois éléments : – Une structure, qui correspond à l’organisation logique des données, la forme sous laquelle les utilisateurs vont les percevoir ou les représenter. – Des contraintes d’intégrité, que l’on peut définir sur les données, afin d’en assurer l’intégrité et la cohérence avec le monde réel et les besoins des applications. – Des langages de manipulation des données, pour les mises à jour et les interrogations.
  • 17. On distingue généralement deux catégories de modèles de données :  Les modèles orientés information ->définition du schéma conceptuel modèle entité-association et ses dérivés (MERISE, ...)  les modèles orientés données ->mise-en-œuvre du SGBD modèle relationnel, modèle hiérarchique, modèle réseau
  • 18. 2.2 Modèle Conceptuel de données (MCD) Après la phase d’analyse, nous pouvons commencer à représenter les informations sous forme conceptuelle. Le modèle Conceptuel de données (MCD) que nous allons construire contient deux éléments principaux: les entités et les relations. Le modèle Entité-Association EA en français, ER en anglais (pour Entity Relationship), c’est un formalisme retenu par l'ISO pour décrire l'aspect conceptuel des données à l’aide d’entités et d’associations. – Structure : Entités (avec des attributs) et associations entre des entités. – Contraintes d’intégrité : identifiants, cardinalités sur les associations. – Manipulation : aucun. La construction du MCD se fait en quatre étapes: a. repérage des entités, b. construction des entités, choix des propriétés, c. Construction des relations, d. Choix des cardinalités.
  • 19. 1. Entité et type d’entité Entité : représentation d’un objet du monde réel ayant une existence propre Type d’entités (TE) : représentation d’un ensemble d’entités perçues comme similaires et ayant les mêmes caractéristiques
  • 20. Repérage des entités : Une entité est un composant du problème : une personne, une facture, un livre, ... C'est la représentation d'un objet matériel ou immatériel pourvu d'une existence propre et conforme aux choix de gestion de l'entreprise. Comme dit plus haut, ce que l'on considère comme entité est un type général (ex : l'entité personne représente toutes les personnes) à ne pas confondre avec une occurrence d'entité (Jean Martin étant une personne, on le considère comme une occurrence de l'entité personne). Une entité doit avoir une existence indépendamment de toute autre entité.
  • 21. Association et type d’associations  Association : représentation d’un lien entre plusieurs objets  Type d’associations (TA) : représentation d’un ensemble d’associations ayant la même sémantique et décrites par les mêmes caractéristiques.
  • 22. 3. Attributs décrivent les propriétés associées à :  un type d’entités  une association
  • 23. Une association est caractérisée par :  Un rôle pour chacun des types d’entités;  Un nom éventuellement suivi d’une flèche précisant le sens de lecture;  Des cardinalités indiquant le nombre d’objets li´es par une association; Dans une association chaque objet joue un rôle déterminé, association binaire : 2 rôles
  • 24. 4. Cardinalité: Elles expriment le nombre de fois ou l’occurrence d’une entité participe aux occurrences de la relation. La cardinalité minimale (0 ou 1) exprime le nombre de fois minimum qu’une occurrence d’une entité participe aux occurrences d’une relation. La cardinalité maximale (1 ou n) exprime le nombre de fois maximal qu’une occurrence d’une entité participe aux occurrences de la relation. Contraintes de cardinalité  Une personne peut ne pas avoir de voiture, en avoir 1, 2,· · · ,n : 0 :n  Une voiture a un et un seul propriétaire : 1 :1
  • 26. Deux rôles (au moins) lient le même type d’entité Une personne femme est mariée à personne Marie
  • 27. L’identifiant Une de ces propriétés a un rôle bien précis, c’est l’identifiant nommé aussi la clé. L’identifiant permet de connaître de façon sûre et unique l’ensemble des propriétés qui participent à l’entité. Par exemple, le fait de connaître la ville d’un client permet il de connaître son nom ? La réponse est non. La connaissance du nom du client permet elle de connaître sa ville ? La réponse est toujours non, car en cas d’homonymie la confusion entre un Durand Max et un Durand Raymond est totale. Il faut donc trouver, ou inventer, une propriété qui lorsque sa valeur est connue permet la connaissance de l’ensemble des valeurs qui s’y rattachent de façon formelle. Ainsi, lorsque le numéro du client est connu, son nom, son prénom et toutes les valeurs des autres propriétés qui s’y rattachent sont connues de façon sûre et unique.
  • 28. Introduction au Modèle Logique des Données Le Modèle Logique des Données (MLD) est la suite normale du processus Merise. Son but est de nous rapprocher au plus près du modèle physique. Pour cela, nous partons du Modèle Conceptuel des Données et nous lui enlevons les relations, mais pas n’importe comment, il faut en effet respecter certaines règles. Voici la procédure à suivre. 1. Cas (0, n), (1,1) ou (1,n), (0,1) Voici un modèle conceptuel de départ : Nous devons supprimer la relation Elever, cela se réalise de façon tout à fait mécanique. L’entité ayant la cardinalité de type 1,1 ou 0,1 absorbe l’identifiant de l’entité la plus forte (0, n ou 1, n). Cet identifiant est alors appelé la clé étrangère. Voici le Modèle Logique des Données découlant du Modèle conceptuel précédent :
  • 29. 2. Cas (0,n), (0,n) ou (1,n), (1,n) Illustrons ce cas sur le Modèle Conceptuel des Données suivant :
  • 30. Dans le cas où la cardinalité maximale est n de chaque côté de la relation, celle-ci se transforme en entité et absorbe les identifiants de chaque entité reliée. Les identifiants ainsi absorbés forment la nouvelle clé de l’entité. Cette nouvelle clé est donc formée par la concaténation des clés étrangères des entités reliées.
  • 31. 4. Règles simples de passage du MCD au MLD • L’entité qui possède la cardinalité maximale égale à 1, recevra l’identifiant ou les identifiants des entités ayant les cardinalités maximales les plus fortes. • Les relations ayant toutes leurs entités reliées avec des cardinalités maximales supérieures à 1, se transformeront en entité en absorbant les identifiants des entités jointes. • Toute relation porteuse de propriétés se transformera en entité et absorbera comme clé étrangère les identifiants des entités qui lui sont liées. Modèle Physique des Données Construire le Modèle Physique des Données consiste à transformer le Modèle Logique des Données en une suite de relations. Cette étape finalise le processus de traitement des données. L’implémentation des bases de données peut
  • 32. Exercice d’Application • On veut représenter la gestion de la SACEM : Nous devons représenter :  Des livres avec : numéro du livre (ISBN), Titre du livre  Des auteurs avec : Numéro de l’auteur, nom de l’auteur  Des éditeurs avec : Numéro d’éditeur, nom de l’éditeur  Des dépôts avec : Numéro de dépôt, nom du dépôt • Attention : ici un « livre » n’est pas le « livre physique » (un exemplaire) mais plutôt une « édition » • L’investigation du domaine a permis de définir les règles suivantes :  un livre peut être :  Écrit par plusieurs auteurs  Édité par plusieurs éditeurs, mais une seul fois par chacun d’entre eux. Pour distinguer, on donne alors l’année éditions  Stocké dans plusieurs dépôts, et cela pour chaque éditeur. • Chaque livre stocké est stocké avec une quantité définie. • Donner le schéma entité-association et les éventuels contraintes d’intégrité correspondant à cet énoncé.
  • 33. Exercice: Un historien souhaite établir des statistiques sur des soldats de la Première Guerre mondiale. Pour chaque soldat, outre l'état- civil, il souhaite avoir la trace :  de la date de son décès si celui-ci est survenu suite aux combats  des blessures reçues (type et date de la blessure, en plus de la bataille où elle a été infligée. Les batailles seront référencées dans une liste comportant le lieu, les dates de début et de fin)  des grades obtenus (avec les dates)  de l'unité de rattachement (avec les dates) Etablir le MCD, le MLD et le MPD adéquats.
  • 34. • Schéma : description des données selon un modèle (ensemble de concepts qui permettent de décrire la structure de la BD et ses contraintes) • Instance de BD : Etat de la BD à un instant donné (données dont la description est réalisé par le schéma) • Modèles de données de différents niveaux : – Conceptuel (description du SI) – Logique (interface avec le SGBD) – Physique (fichiers), Au niveau logique, les modèles proposent : • Un langage de définition du données (structure et contraintes) (LDD); • Un langage de manipulation de données (LMD) (Langage de requêtes); Les SGBD permettent de construire des interfaces graphiques, à formulaires,
  • 35. Modèle relationnel • Les principaux concepts : – Relation / Table – Identifiant / Clé primaire – Identifiant externe / Clé étrangère – Domaine –
  • 36. Dans un schéma relationnel, on a besoin de systèmes spécifiques pour conserver et manipuler les données. - Les données sont représentées dans des tables • Les lignes sont des entités • Les colonnes sont des propriétés - Le découpage en tables demande une analyse et une optimisation - L’analyse doit aller au-delà des besoins immédiats (abstraction) Base de données = ensemble de tables - Chaque table a un nom unique (ex : Film) - Chaque table contient les données relatives à des entités de même nature. - Chaque ligne (enregistrement) d’une table décrit les données relatives à une entité. - Chaque colonne d’une table décrit une propriété des entités (ex : Prix). - Les lignes d’une table sont distinctes. - Les noms de table et de colonnes constituent le schéma de la base. - Les lignes (entités) constituent le contenu de la base.
  • 37. DESCRIPTION DES DONNÉES – CONCEPTS DE BASE
  • 39. IDENTIFICATION DES DONNÉES – CLÉ PRIMAIRE • identifiant unique • pas de valeur nulle Il ne peut y avoir deux tuples