Vous êtes sur la page 1sur 30

COURS BASES DE DONNÉES

Présenté par : L. BERKANI

Section: L3 GTR
Année: 2023-2024
PROGRAMME DU MODULE
 Chapitre 1: Introduction aux bases de données et aux
systèmes de gestion de bases de données
 Modèle E/A; modèle relationnel

 Chapitre 2: Conception d’une base de données


 Normalisation du schéma relationnel

 Chapitre 3: Langages relationnels – Langage Algébrique

 Chapitre 4: Langages relationnels – Langage SQL

2
SÉANCES DE TPS - SQL
 Langage de définition de données (LDD)
 TP1 : création de tables, d’index, suppression de
tables/index
 TP2: mise à jour de la structure d’une table,

 Langage de manipulation de données (LMD)


 TP3: manipulations des requêtes d’insertion de
données, modification et suppression
 TP4: requêtes Select
 TP5: vues, fonctions d’agrégats et group by

 Langage de contrôle de données (LCD)


 TP6: création des utilisateurs et droits d’accès 3
CHAPITRE 1 – BDD ET SGBD
 Une base de données (BD) consiste en une collection de données
persistantes et pertinentes (nécessaires) utilisées par des
systèmes d’application de certaines organisations.

 BD est vue comme un regroupement de plusieurs données où toute


redondance a été totalement ou partiellement éliminée.
 Avantage : diminution de l’incohérence.

 Les fichiers sont conçus pour satisfaire les besoins d'une application
 une même information peut être représentée dans plusieurs fichiers,
et même différemment (format, codage,…).
 Risque de conflit lors d'une mise à jour

 Partagées: différents utilisateurs peuvent utiliser ces données pour


des buts divers ou même y accéder simultanément.
4
NIVEAUX DE REPRÉSENTATION DES DONNÉES

Processus de développement d’une BDD comprend 2 phases :

• Conception dont le résultat est le schéma conceptuel. La validation


s’effectue à travers les schémas externes, 5

• Réalisation dont le résultat est le schéma interne et la BD.


NIVEAU CONCEPTUEL

Niveau conceptuel: le processus de conception consiste à traduire


les objets du monde réel en catégories d’objets selon les 3 Modèles:

 Les modèles de 1ère génération : décennie 60: Hiérarchique;


Réseau

 Les modèles de 2ième génération : les décennies 70 et 80:


E/A : Entité /Association ; Relationnel

 Les modèles de 3ième génération : la décennie 90: Modèle


orienté objet

6
NIVEAUX EXTERNE ET INTERNE

 Niveau externe : un schéma externe appelé aussi Vue (une


perception des données par un programme d’application),

 Une vue est un sous-schéma d’un schéma conceptuel.


 Le schéma externe peut contenir des informations complémentaires
(exemple : informations de calcul).
 Les différents schémas externes permettent la validation du schéma
conceptuel.

 Le niveau interne : est le niveau relatif à la mémoire physique


(manière selon laquelle les données sont réellement stockées).

7
SYSTÈME DE GESTION DE BASE DE DONNÉES

 Un système de gestion de base de données (SGBD) est un logiciel


qui prend en charge tous les accès à la base de données.
 Les objectifs d’un SGBD sont :

Indépendance des données:


 Indépendance physique: permet à l’administrateur de modifier,
pour des raisons d’efficacité, l’organisation physique des données
sans modification des programmes.
 Exemple: ajouter table d’index, accélérant l’accès aux données, sans
toucher les programmes d’application.

 Indépendance logique: permet de modifier le schéma conceptuel,


en ajoutant de nouvelles classes d’objets ou d’associations, sans
modifier les programmes d’applications.

8
SGBD

Définition des données


 Le SGBD doit être muni d’un langage de définition de données
(LDD).
 Objectif : définir les données sous une forme non compilée et les
convertir dans la forme objet appropriée.

Manipulation des données


 Le SGBD est muni d’un langage de manipulation de données
(LMD).
 Objectif : traiter les requêtes de l’utilisateur pour interroger, modifier,
supprimer ou insérer de nouvelles données.

Efficacité des accès aux données : les accès aux données sont plus
efficaces que dans les SGF grâce :
 Au développement d’index sophistiqués
 A l’existence de plusieurs chemins d’accès à une donnée
 A l’existence de techniques d’optimisation de requêtes qui sélectionnent le
9
chemin optimal à une donnée.
SGBD

Administration centralisée: l’administrateur est chargé de définir


des structures de stockage, des structures de données et assurer le suivi
et le contrôle de leur évolution.

Non redondance : la conception intégrée de la BD grâce à la notion de


schéma de données évite les redondances constatées dans les SGF.

Cohérence : Les données de la base obéissent à des règles appelées


contraintes d’intégrité (CI).

Partageabilité : Le SGBD doit permettre à plusieurs applications de


partager les données. Les conflits d’accès sont gérés grâce à la notion de
Transaction et de définition d’algorithmes de gestion de la concurrence.

10
SGBD

Sécurité et confidentialité :
 Protection contre les pannes: possibilité de récupérer un état
cohérent des données grâce à l’existence et à la gestion de
journaux de transactions (trace d’exécutions antérieures).
 Protection contre les accès mal intentionnés: garantir la
confidentialité (définition de droits d’accès, mots de passe etc.)

11
MODÈLES DE DONNÉES

Modèle hiérarchique

 Insertion : si l'on veut enregistrer les


caractéristiques d'une nouvelle pièce
alors que celle-ci n'est fournie par
aucun fournisseur, on doit introduire
un fournisseur fictif.

 Suppression: si l'on supprime le


seul fournisseur d'une pièce,
l'information concernant cette pièce
disparaît aussi. La notion de
hiérarchie implique que la
suppression d'un segment entraîne
celle de tous les segments
subordonnés.

 Modification: si l'on désire modifier


le matériau de P2, il est nécessaire
d'examiner toutes les listes de pièces
fournies par les fournisseurs.
 Examen complet de la base. 12
MODÈLES DE DONNÉES

Modèle Entité/Association de Chen 1976


 La description de l’aspect statique de la réalité organisationnelle
passe par la description de ses entités, de leurs propriétés, des
liens entre les entités et des contraintes auxquelles elles sont
soumises.

 Proposition d’un modèle proche de la réalité basé sur les concepts


ENTITE TYPE/ ASSOCIATION TYPE.

 Une association est une combinaison d’entités dans laquelle


chacune d’elle joue un rôle spécifique.

 Les entités et les associations sont caractérisées par des


propriétés

 Une entité ou une association sont caractérisés par le doublet 13


« attribut valeur »
MODÈLE E/A

Exemples:

 Employé :{e1} : (Nom, ‘Ali’), (Date naissance, ’10/12/1999’), (Salaire,


‘400000’)
 e1 est une instance ou occurrence du type ou de la classe Employé
 Où : Nom appartient au domaine Char (30) ; Date naissance appartient au
domaine date
 Affectation (Employé, Projet) : (Datedeb, ’01/03/2023’), (Datefin,
’31/12/2023’)

 Le schéma de l’entité type définit l’entité type en intention.


 Employé (Nom, Date-naissance, Salaire).

 Un exemple d’extension de la classe (instances de la classe) est :


 {Attaf, 10/12/1999, 40000} ; {Benmohamed, 15/02/1995, 200000} ;
{Benmiloud, 05/07/1993, 100000}
14
 Affectation (Employé, Projet : Datedeb, Datefin)
 Le schéma d’association type définit l’association type en
intention.

15
16
 Une clé est un attribut ou groupe d’attribut dont les valeurs
permettent d’identifier de manière unique les entités d’un même
type.

 La spécification de la clé d’une entité type implique une


contrainte d’unicité sur l’extension de l’entité type.
 Exemple : FOURNISSEUR : NF ; PIECE : NP

 La clé d’une association type est la combinaison des clés des


entités types participantes

17
 La cardinalité est le nombre d’associations auxquelles une
entité peut participer. Il existe trois cardinalité prédéfinies
 1-1 : a une instance de l’objet A est associée une et une seule
instance de l’objet B.
 1-n : a une instance de l’objet A est associée une ou plusieurs
instances de l’objet B.
 n-m a une instance de l’objet A est associée une ou plusieurs
instances de l’objet B et inversement.

18
MODÈLES RELATIONNELS

 L’approche relationnelle représente la tendance principale du


marché car le modèle relationnel est fondé sur des bases
mathématiques.

Dans ce système :
 L’utilisateur perçoit les données comme des tables,
 Les opérateurs génèrent de nouvelles tables résultats à partir des
tables existantes (exemple: extraire certaines lignes et/ou
certaines colonnes, qui sont aussi des tables).

19
MODÈLES RELATIONNELS

20
MODÈLES RELATIONNELS

21
MODÈLES RELATIONNELS

 La plus petite valeur atomique (exemple: valeur du numéro d’un


fournisseur, du poids d’une pièce ou d’une quantité fournie par un
fournisseur ) est appelée scalaire.

 Un domaine est défini comme un ensemble donné de valeurs


scalaires, toutes de même type (exemple: domaine des numéros
des fournisseurs, domaine des villes…),
 Chaque attribut doit être défini sur un seul domaine: les valeurs des
attributs doivent être prises dans ce domaine.

22
PASSAGE AU MODÈLE RELATIONNEL

Le traitement des entités


 Chaque entité du modèle E/A est transformé en table
 Les propriétés de l'entité deviennent les attributs de la table
 L'identifiant de l'entité devient clé primaire

23
Association binaire 1,1- 1,n
 Correspond à une paire de cardinalité 1,1 et 0,n ou 1,n.
 Ce type d'association est également appelée association 1,n

Auteur (num_auteur, nom_auteur, date_naissance)


Livre (num_livre, titre_livre, num_auteur*)

Clés primaires Clé étrangère

24
Association binaire 0,1 -1,1
 Cette association correspond à une paire de cardinalité 1,1 et 0,1

 MICRO (Num_Micro, Marque_Micro)


 CD_ROM (Num_Cd, Marque_Cd, Num_Micro*)

 Dans ce cas, un micro pouvant ne pas avoir de CD_Rom, la clé étrangère


num_CD peut être nulle, ce qu'il faut éviter au maximum.

 MICRO (Num_Micro, Marque_Micro, Num_Cd*)


 CD_ROM (Num_Cd, Marque_Cd, Num_Micro*)

25
Association binaire 0,1 -0,1

Association binaire 0,1 -0,n ou 1,n

La solution à 2 tables
reste majoritairement
utilisée pour des raisons
d'allégement du modèle
relationnel

26
Association binaire x,1 -x,n
 Ce cas regroupe toutes les associations où la cardinalité maximale
de part et d'autre est à n, la cardinalité minimale pouvant être 0
ou 1.

27
Association binaire x,1 -x,n et porteuse de données
 Ce cas est une extension du cas précédent, la propriété portée par
l'association devient un attribut de la table issue de l'association

28
Associations n-aires
 Associations ternaires : une généralisation du cas précédent.

 Associations n-aires :Ce cas n'est qu'une généralisation du


traitement de l'association ternaire.
29
Associations réflexives
 Ces associations sont des associations binaires, leur traitement
dépend des cardinalités.

30

Vous aimerez peut-être aussi