Vous êtes sur la page 1sur 12

Cours de Bases de Données

Wided BEN ABID


L1Info
ISIMM 2020-2021

Plan

1. Introduction aux Bases de données et aux SGBD


2. Modèle Entité/Association
3. Modèle Relationnel
4. Normalisation
5. Algèbre Relationnelle
6. Langage SQL

Cours de Base de Données 2

1
Chapitre 1
Introduction aux Bases de
Données

Organisation des données


 Les données peuvent être enregistrées :
 Dans des fichiers  besoin d’un SGF (Système de Gestion de
Fichier) pour l’exploitation de ces données
 L’utilisation directe de fichiers, avec un SGF, soulève de très
gros problèmes :
 Lourdeur d’accès aux données
 Manque de sécurité
 Pas de contrôle de concurrence : dans un environnement où
plusieurs utilisateurs accèdent aux même fichiers, des problèmes
de concurrence d’accès se posent

 Dans des Bases De Données (BD) besoin d’un Système de


Gestion de Base de Données (SGBD) pour l’exploitation des
données

Cours de Base de Données 4

2
BD et SGBD
 Définition d’une BD : Une base de données est un ensemble
structuré de données enregistrées avec le minimum de
redondance pour satisfaire simultanément plusieurs utilisateurs de
façon sélective en un temps convenable
 Définition d’un SGBD : un ensemble de logiciels systèmes
permettant de stocker et d’interroger un ensemble de fichiers
interdépendants

SGBD BD

Niveau logique
Niveau externe Niveau physique
Cours (Conceptuel) s
de Base de Donnée 5

SGBD (1)
 Chaque niveau du SGBD dispose des fonctionnalités :
 Niveau externe : vues ; environnement de programmation
(intégration avec un langage de programmation) ; Interfaces
conviviales ; Outils d’aides (e.g. conception de schémas) ;
Outils de saisie/d’impression d’états
 Niveau logique :
 Un langage de définition de données (LDD)
 Un langage de manipulation de données (LMD)
 Gestion de la confidentialité (sécurité)
 Maintien de l’intégrité
 Niveau physique : gestion sur mémoire secondaire (fichiers)
des données, du schéma, des index ; Partage de données et
gestion de la concurrence d’accès ; Reprise sur pannes
(fiabilité) ; Distribution des données et interopérabilité (accès
aux réseaux)

Cours de Base de Données 6

3
SGBD (2)
 Un SGBD est l’intermédiaire entre les utilisateurs et les fichiers physiques

Base de données
Programme 1
Fichier 1
Programme 2 SGBD Fichier 2

Programme 3 Fichier 3

 la gestion de données, avec une représentation intuitive simple


sous forme de table par exemple
 la manipulation de données. On peut insérer, modifier les données
et les structures sans modifier les programmes qui manipulent la
base de données
Image logique Image physique

Fichiers
physiques 7
Cours de Base de Données

SGBD (3)
 Un SGBD assure :
 la description des données et leur recherche et mise à jour
 la non redondance des données : afin d’éviter les problèmes lors des
mises à jour, chaque donnée ne doit être présente qu’une seule fois
 la sûreté : vérifier les droits d’accès des utilisateurs ; limiter les accès non
autorisés
 la sécurité : sauvegarde et restauration des données ; limiter les erreurs
de saisie et de manipulation
 l’intégrité : Les données sont soumises à un certain nombre de contrainte
d’intégrité qui définissent un état cohérent de la base
 Exemples : l’âge d’une personne est supérieur à zéro. Le salaire
supérieur à zéro, etc
 la concurrence d’accès : détecter et traiter les cas où il y a conflit
d’accès entre plusieurs utilisateurs et les traiter correctement
 le partage des données : Il s’agit de permettre à plusieurs utilisateurs
d’accéder aux mêmes données au même moment. Il s’agit alors de
pouvoir :
 Permettre à deux (ou plus) utilisateurs de modifier la même donnée
 Assurer un résultat d’interrogation cohérent pour un utilisateur
consultant une table pendant qu’un autre la modifie

Cours de Base de Données 8

4
Conception d’une Base de Données

Réel
(Description des
besoins via un
cahier de charge)

Modèle  Indépendant du
conceptuel modèle de données
 Indépendant du SGBD
(Modèle E/A) Médecin Consultation Patient

 Dépendant du
Modèle logique modèle de données Relationnel Objet
 Indépendant du SGBD

 Dépendant du  Organisation physique des données


Modèle Physique modèle de données  Structures de stockage des données
 Dépendant du SGBD  Structures accélératrices (index)

Cours de Base de Données 10

5
Étapes de la conception

 Étape 1 : Analyse des besoins


 Étape 2 : Élaboration du schéma conceptuel
 Étape 3 :
 Conception du schéma logique
 Affinement du schéma logique
 Étape 4 : Élaboration du schéma physique

Cours de Base de Données 11

 Étape 1 : Analyse des besoins


 Comprendre les besoins et modéliser le domaine de
l'application
 Étudier les problèmes des utilisateurs
 Classer les données en des sujets homogènes et établir les
associations entre ces parties
 Exemple : BD de l’ISIMM. Les sujets possibles sont : Étudiant,
Enseignant, Salle, Matière, etc.

 Étape 2 : Élaboration du schéma conceptuel


 Etablir me schéma E/A (Entité/Association) en se basant sur
l’étape 1
 Exemple de modèle E/A:

Etudiant
Enseignant Donner cours

Cours de Base de Données 12

6
 Étape 3 :
 Conception du schéma logique
 Transformer le schéma E/A en schéma logique
relationnel (on considère le modèle relationnel)
 Le passage du schéma E/A au schéma relationnel se fait
selon des règles bien déterminées

 Affinement du schéma logique


 Question : "Est-ce un bon schéma ?"
 Un bon schéma est :
 sans oubli
 sans redondance
  Normaliser le schéma logique
 Résultat de l'étape:
 schéma logique de la base de données

Cours de Base de Données 13

 Étape 4 : Élaboration du schéma physique


 Implémentation du schéma logique en utilisant un outil telle
que Access, MySQL, etc.

Cours de Base de Données 14

7
Types de SGBD

 Il existe cinq modèles de SGBD, différenciés selon la


représentation des données qu'elle contient :
 le modèle hiérarchique : les données sont classées
hiérarchiquement, selon une arborescence descendante.
Ce modèle utilise des pointeurs entre les différents
enregistrements. Il s'agit du premier modèle de SGBD

 le modèle réseau : comme le modèle hiérarchique ce


modèle utilise des pointeurs vers des enregistrements.
Toutefois la structure n'est plus forcément arborescente dans
le sens descendant

Cours de Base de Données 16

8
 le modèle relationnel : les données sont enregistrées dans
des tables à deux dimensions (lignes et colonnes)

 le modèle déductif : les données sont représentées sous


forme de table, mais leur manipulation se fait par calcul de
prédicats
 le modèle objet : les données sont stockées sous forme
d'objets (des structures appelées classes)

 A la fin des années 90 les bases relationnelles sont lesplus


répandues (environ 3/4 des bases de données)

Cours de Base de Données 17

Chapitre 2
Le modèle Entité/Association

9
Modèle Entité/Association (E/A)

 La base de données est le fondement de tout le système,


une erreur pendant sa conception est difficilement
récupérable par la suite
 C’est le modèle conceptuel le plus utilisé
 Il se caractérise pas sa simplicité et sa puissance :
 analyse du monde réel
 conception du système d’information
 communication entre différents acteurs de l’entreprise
 il repose sur une représentation graphique facilitantsa
compréhension
 Actuellement utilisé par plusieurs méthodes et outilsd'aide
à la conception des bases de données (MERISE, IDA,
Yourdon, ...)
 La modélisation conceptuelle esttotalement
indépendante de tout choix d’implantation

Cours de Base de Données 19

Concepts de base du modèle E/A

10
Entité
 Modèle E/A: Description des données en termes d'objets,
liens et propriétés
 objet → entité Entité 1 Association Entité 2
 lien → association
 propriété → attribut Entité 3

 Entité (représentées par des rectangles)


 Représentation d'un objet du monde réel (concret ou abstrait),
perçu par le concepteur comme ayant une existence propre, et à
propos duquel on veut enregistrer des informations
 Exemples : Mme Fathia, Mr. Hichem, la cafetière X32, l'atelier de
fabrication A22, le service Comptabilité, … sont des objets
susceptibles d'être représentés par des entités

Cours de Base de Données 21

Association (1/2)
 Associations entre entités (représentées par des liens entre ces
rectangles)
 C’est une liaison qui a une signification précise entre entités
 Exemples : Entre Acteur et Film, il existe la relation joue un rôle

 La cardinalité d’un lien entre une entité et une association précise le


min et le max de fois qu’un individu de l’entité peut être concerné
par l’association
 Chiffre de droite est la cardinalité max. Il correspond à la réponse à la
question : combien de fois au moins une entité de A est relié à une entité
de B ?
 Chiffre de gauche est la cardinalité min. Il correspond à la réponse à la
question : combien de fois au plus une entité de A est relié à une entité
de B ?

 Les valeurs possibles sont : (0,1), (1,1); (0,n), (1,n), (n, m)

Cours de Base de Données 22

11
Association (2/2)
 Association ‘1-1’ : à une occurrence de l’entité E1 peut
correspondre au plus une occurrence de l’entité E2 et vice versa
1, 1 0, n
Personne Habite Adresse

 Association ‘1-n’ ou ‘0-n’ : à une occurrence de l’entité E1 peuvent


correspondre plusieurs occurrences de l’entité E2. Mais à une
occurrence de l’entité E2 peut correspondre au plus une occurence de
l’entité E1 0, n
0, n
Personne Possède Voiture

 Association ‘n-m’ : à une occurrence de l’entité E1 peuvent


correspondre plusieurs occurrences de l’entité E2 et vice versa
n, m 0, n
Vendeur Vend Produit

Cours de Base de Données 23

Degré d’une association (1/2)


 Le degré d'une association est le nombre d'entités y participant
 Association binaire (de degré 2)

 Association plurielle : deux entités peuvent être plusieurs fois


en associations

Cours de Base de Données 24

12