Vous êtes sur la page 1sur 10

ENSIT

Plan

• Chapitre 1: Introduction aux Bases de données

Cours de Bases de Données • Chapitre 2: Modèle conceptuel : Modèle Entité / Association

• Chapitre 3: Modèle relationnel

• Chapitre 4: Normalisation

• Chapitre 5: Langage SQL

Motivation et Introduction
• Nous baignons dans un tourbillon d'informations
• Nous recevons des informations de notre environnement
Chapitre I • Nous transmettons des informations à notre environnement
• Les informations prennent la forme de données(mémorisés et
Introduction aux Bases de Données véhiculés sur un support matériel ou immatériel)

Problème: comment stocker et traiter ces données ?

3 4

1
Motivation et Introduction Motivation et Introduction
Les données sont omniprésentes autour de nous ...
Comment les stocker dans un ordinateur ?

• Scanner les bons de commande [1/10]


• Copier les données dans un tableau Word [2/10]
• Copier les données dans une feuille Excel [4/10]
• Créer des fichiers [7/10]
5 • Créer une base de données [10/10] 6

Motivation et Introduction Motivation et Introduction


Ncom Datecom Total-Commande
Données de la commande
30188 02/01/2009 69720

Ncli Nom Adresse Localité

Données du B512 GILLET 14,r. de l’Eté Toulouse Données du client


client

Données de la
commande Npro Libelle Prix Qcom Sous-total

CS464 CHEV.SAPIN 400x6x4 220 180 39600


Données des
PA45 POINTE ACIER 45 (20K) 105 22 2310 détails
Données d’un
détail PA60 POINTE ACIER 60 (10K) 95 70 6650

PH222 PL. HETRE 200x20x2 230 92 21160

Observations:
1. Les données TOTAL-COMMANDE et SOUS-TOTAL sont calculées : inutile de les
conserver
2. Il est impossible de reconstituer le bon de commande d'origine :quel est le client
7 8
de la commande, quelle est la commande d'un détail ?

2
Motivation et Introduction Motivation et Introduction
Données de la commande
Distribution optimale des données
Ncom NCli Datecom Données de la commande
30188 B512 02/01/2009
Ncom NCli Datecom

Ncli Nom Adresse Localité 30188 B512 02/01/2009

Données du client
B512 GILLET 14,r. de l’Eté Toulouse
Ncli Nom Adresse Localité
Données du client
Ncom Npro Libelle Prix Qcom B512 GILLET 14,r. de l’Eté Toulouse

30188 CS464 CHEV.SAPIN 400x6x4 220 180


Données des produits
30188 PA45 POINTE ACIER 45 105 22 Données des Données des détails
(20K) détails Npro Libelle Prix
Ncom Npro Qcom
30188 PA60 POINTE ACIER 60 95 70 CS464 CHEV.SAPIN 400x6x4 220
(10K) 30188 CS464 180
PA45 POINTE ACIER 45 105
30188 PH222 PL. HETRE 200x20x2 230 92
30188 PA45 22 (20K)
PA60 POINTE ACIER 60 95
Observation: 30188 PA60 70
(10K)
Si plusieurs détails mentionnent le même produit, ses caractéristiques sont répétées 30188 PH222 92
autant de fois : pour éviter les redondances, on doit isoler les données concernant les PH222 PL. HETRE 200x20x2 230
produits
9 10

Motivation et Introduction Motivation et Introduction


Première Approche: les Fichiers Première Approche: les Fichiers
Fichier Commande
Limites:
Ncom NCli Datecom
30188 B512 02/01/2009 1.Lourdeur d’accès aux données: En pratique, pour chaque accès aux données,
même le plus simple, il faudrait écrire un programme (ex. pour rechercher une
Ncli Nom Adresse Localité
commande ou un client)
Fichier client
B512 GILLET 14,r. de l’Eté Toulouse
2.Contrôle en différé des données: augmentation des délais et du risque
Fichier produits d’erreur
Fichier Détails
Npro Libelle Prix
Ncom Npro Qcom
3. Manque de sécurité: Si tout programmeur peut accéder directement aux
CS464 CHEV.SAPIN 400x6x4 220 fichiers, il est impossible de garantir la sécurité et l’intégrité des données
30188 CS464 180
PA45 POINTE ACIER 45 105
30188 PA45 22 (20K)
PA60 POINTE ACIER 60 95 4.Pas de contrôle de concurrence: Dans un environnement dans lequel
30188 PA60 70
(10K) plusieurs utilisateurs accèdent aux mêmes données, des problèmes de
30188 PH222 92 PH222 PL. HETRE 200x20x2 230 concurrence d’accès se posent.

11 12

3
Motivation et Introduction Motivation et Introduction
Approche optimale: Base de Données Approche optimale: Base de Données
Ajoutons d'autres données, on obtient notre première base de données

Conserver les données Interroger les données

Quel est le numéro, le nom et l'adresse des clients de Toulouse?


select NCLI, NOM, ADRESSE
From CLIENT
Where LOCALITE = 'Toulouse';

Quelles sont les commandes des clients de Toulouse?


select NCOM
From COMMANDE
where NCLI in (select NCLI from CLIENT where
13 14
LOCALITE = 'Toulouse');

Qu’est ce qu’une Base de Données ? Qu’est ce qu’une Base de Données ?


• Collection de données structurées et mémorisées sur un support
permanent.

• Une Base de Données (BD) est l’ensemble cohérent, intégré et


partagé des informations nécessaires au fonctionnement d’une
entreprise.

• Une entreprise désigne ici toute collectivité d’individus travaillant


en coordination à la réalisation d’un objectif commun.

•Exemples de BD: une BD permettant la gestion des étudiants, des


professeurs et des cours d’une université, celle utilisée pour la
gestion de stock d’un magasin, etc.

•Une BD est gérée par un logiciel appelé Système de Gestion de


Base de Données (SGBD). 15 16

4
Types d’utilisateurs de BD
Cycle de vie d’une BD
• On distingue essentiellement trois types différents d’utilisateurs de
BD à savoir :

Situation Analyse de Modélisation -Concepteurs de bases de données et développeurs


initiale la situation et de la base d’application: Ils représentent ceux qui définissent, décrivent et
à informatiser des données de données créent la base de données.

- Administrateurs de bases de données: Ils gèrent la base ( les


droits des utilisateurs, les sauvegardes, etc.).
Utilisation Implantation
de la base de la base - Utilisateurs finaux: manipulent la BD. Ils peuvent n’avoir aucune
de données de données connaissance sur les BD.

17 18

Qu’est ce qu’un modèle de données? Qu’est ce qu’un schéma de la BD ?


• C’est l’ensemble de concepts qui permettent la description des • Le schéma de la BD est l’expression de la description de la
données d’une base et les règles d’utilisation de ces concepts. base de données obtenue en employant un modèle de données

• Le modèle de donnée le plus utilisé est le modèle relationnel. • Les différents schémas établis pour décrire les différents
aspects d’une BD sont :

– Le Schéma conceptuel
– Le Schéma logique
– Le Schéma interne
– Les Schémas externes

19 20

5
Les schémas de la BD Les schémas de la BD
Le schéma logique
Le schéma conceptuel
• La phase d’implantation nécessite que la description des
• Il permet de présenter une description de la future base de
données soit traduite dans les concepts du modèle utilisé par le
données et ce indépendamment de la solution informatique
SGBD choisi (réseau, relationnel, etc.).
retenue.
• Le schéma obtenu par la traduction du schéma conceptuel sera
Employé 1,N
1,1 Département appelé le schéma logique.
travaille N°dep
N°emp
Nom NomDep
Prenom Employé (N°emp, nom, prenom, salaire, #N°dep)
Schéma relationnel
Salaire Département (N°dep, nomdep)

21 22

Les schémas de la BD Les schémas de la BD


Le schéma externe
Le schéma interne • Au cours de la phase d’utilisation de la BD, d’autres schémas sont
• Il représente la description de comment les données de la base élaborés pour répondre aux besoins spécifiques des différents
sont stockées dans la machine (les fichiers utilisées, leur groupes d’utilisateurs.
organisation, etc.).
• Chaque utilisateur (ou groupe d’utilisateurs) a des exigences
limitées (il n’est intéressé que par certaines informations) et
Fichier Employe Fichier Departement
particulières (il peut souhaiter une représentation des informations
N°emp N°dep différente de celle décrite dans le schéma conceptuel).
Nom Nomdep
Prenom Exemple 1
Salaire
Schéma externe du directeur du département informatique:
N°dep
Employe-Info: nom, prenom et salaire
- Nomdep =Informatique
- N°dep dans employe = N°dep du département informatique
23 24

6
Les schémas de la BD Qu’est ce qu’un Système de gestion de
Exemple2
• Soit le schéma conceptuel suivant (S1): bases de données (SGBD) ?
Etudiant : n°étudiant, nom, prénom, date de naissance,
Enseignant : nom, prénom, grade, n°compte_bancaire • Ensemble de programmes qui permettent à plusieurs
Cours : nomC, cycle, nom_enseignant utilisateurs la gestion et l’accès à des bases de
Inscription : n°étudiant, nom_cours, note1, note2 données

• On peut générer le schéma externe suivant:

Schéma externe du professeur de base de données :


Etudiant _BD : nom, prénom, note1, note2, note_finale BD
- n°étudiant dans Etudiant = n°étudiant dans Inscription SGBD
- nom_cours dans Inscription = BD
- note_finale = (note1 + note2)/2

25 26

Organisation d’un système de bases de


Types de SGBD
données
• Hiérarchique

Système de gestion
Application • Réseau
de base de données

• Relationnel

Application

Base de
données
Fichier
Application 27 Fichier

28

7
SGBD hiérarchique SGBD hiérarchique
• Caractéristiques
• Structure arborescente
– Accès vertical (haut vers bas et bas vers haut)
Compte bancaire
• Problèmes
Prenom Nom Client – La relation « N vers N » ne peut pas être traité (ex, un malade
peut avoir plusieurs médecins et un médecin a plusieurs
Ali Bejaoui Leila Ben Younes Farah Hachani
patients)
– Coûteux en espace mémoire
– Accès aux informations parfois difficiles et/ou coûteuses :
Compte
N°compte Solde clients possédant un solde donné
23150 8 450 000 24140 175 24145 3000 24175 500

29 30

SGBD réseau SGBD réseau


• Avantages
• Composé d’enregistrements et de liens
– Les liens entre les données peuvent exister sans restriction
(ex, type n-n)
– moins d’espace mémoire
Ali Bejaoui 23150 8 450 000
– Manipulations plus faciles

24145 3000 • Inconvénients


Farah Hachani
– Accès séquentiel, donc lent (Pour retrouver une donnée dans une
24175 500
telle modélisation, il faut connaître le chemin d'accès (les liens), ceci
rend encore les programmes dépendants de la structure de
données.

Leila Ben Younes 24140 175 – Difficile à programmer et à maintenir

31
RQ: Les SGBD hiérarchiques et32réseaux sont aujourd’hui
considérés comme obsolètes

8
SGBD relationnel (SGBDR) SGBD relationnel (SGBDR)
TABLE COMPTE
• Constituée de tables représentant des objets ou des
associations entre objets NOCOMPTE SOLDE
23150 8 450 000
TABLE CLIENT colonne 24140 175
NOCLIENT NOM PRENOM 24145 3000
100 Ali Bejaoui ligne
24175 500
101 Leila Ben younes
TABLE COMPTE-CLIENT
102 Farah Hachani
NOCOMPTE NOCLIENT
• Dans une table, les termes ligne et enregistrement sont
synonymes. 23150 100
• Il en est de même pour les termes colonnes et champs. 24140 101
24145 102
24175 102
33 34

Objectifs des SGBD


SGBD relationnel (SGBDR)
• Créer, consulter et mettre à jour (ajouter, supprimer ou
• Avantages modifier des données) une BD.

• Facilité de programmation et d’exploitation • Supporter les concepts définis au niveau du modèle de


• Structure basée sur la logique mathématique données.
• Possède son propre langage normalisé : SQL
• Portabilité • Assurer l’indépendance physique : Il s’agit de pouvoir modifier
le schéma interne sans avoir à modifier le schéma logique ou
conceptuel.
• Exemples
• Assurer l’indépendance logique: ceci consiste à offrir la
• Oracle possibilité de modifier un schéma externe sans modifier le
• Microsoft Access schéma logique et le schéma conceptuel.
• SQL Server
• Rendre transparent le partage de données entre différents
utilisateurs: plusieurs utilisateurs doivent pouvoir utiliser la base de
façon concurrente et transparente.
35 36

9
Objectifs des SGBD Architecture d’un SGBD
• Assurer la sécurité des données: • En 1975, le comité SPARC de l’ANSI a proposé une architecture à
- Les données doivent être protégées contre les accès non autorisés. Un trois niveaux qui est devenue classique.
SGBD doit permettre d’interdire à certaines personnes de réaliser
certaines opérations sur une partie ou sur toute la base.
- D’un autre côté, la sécurité des données doit être assurée en cas de Niveau externe Schéma externe Schéma externe … Schéma externe
panne d’un programme ou du système. Un SGBD doit être capable de
restaurer la BD dans un état cohérent, le même ou le plus proche de
celui précédant la panne.
Niveau logique Schéma logique

• Assurer la cohérence des donnée: les données stockées dans la BD


doivent respecter un certains nombre de contraintes dite d’intégrité. Par
Niveau interne Schéma interne
exemple, le salaire d’un employé doit être supérieur à 300 D. Un SGBD
doit assurer que ces contraintes sont vérifiées à chaque insertion,
modification ou suppression des données.

37 38

Architecture d’un SGBD Architecture d’un SGBD


Le niveau externe
Le niveau interne (physique)
• Il prend en charge le problème du dialogue avec les utilisateurs:
l’analyse des requêtes présentées par les utilisateurs, le contrôle des • Il s’occupe du stockage des données dans les supports physiques.
droits d’accès de l’utilisateur, la présentation des résultats.
• Il s’appuie sur un système de gestion de fichiers pour définir la politique
• Ce niveau est défini à travers les schémas externes. de stockage.

Le niveau logique • Il assure en outre la gestion d’accès à ces fichiers.

• Il correspond à la vision générale des données indépendante des


applications individuelles et de la façon dont les données sont stockées.

• Il assure aussi les fonctions de contrôle global telles que l’optimisation


globale des requêtes, gestion des conflits d’accès simultanés de la part
de plusieurs utilisateurs, garantie le bon déroulement même en cas de
panne.
39 40

10

Vous aimerez peut-être aussi