Академический Документы
Профессиональный Документы
Культура Документы
Objectifs :
• Acquérir les compétences nécessaires à la conception et à la mise
SGBD en œuvre d’une base de données (à l’aide d’un SGBDR) :
Cours – TD - TP – Savoir modéliser, créer et interroger une base de données
relationnelle;
Mohamed Mosbah – Savoir utiliser des systèmes de gestion de base de données
(SGBD) supportant SQL tels que Oracle, MySQL ou PostGres
Bureau 223, mosbah@enseirb.fr
A court terme : répondre aux offres de stages et de PFE
1 2
Introduction
(Base de donnée)
• Une base de données est un ensemble structuré
d’informations mémorisées sur un support
Introduction aux Bases de permanent.
données • Exemples :
– Gestion des commandes des différents clients d’une
Mohamed Mosbah entreprise.
2ème A. Info – Gestion des affectations des pilotes et des avions aux
différents vols.
– Etc.
5 6
1
• Sans l’informatique : • Avec l’informatique :
– une bd est un ensemble de dossiers et de liens logiques entre – Une bd peut être un ou plusieurs fichiers. Cependant,
ces dossiers. l’utilisation directe de fichiers entraîne :
– Chaque dossier est un ensemble de fiches, chaque fiche • une lourdeur d’accès aux données.
comporte un ou plusieurs renseignements sur un élément de • un manque de sécurité.
la bd. • pas de contrôle de concurrence.
• etc
– Exemple : gestion des vols.
• Les dossiers : pilotes, vols, avions – Elle peut être une collection de tables (bds relationnelles).
• Les fiches : fiche d’un avion : code, désignation, date mise en service, • Recours à un logiciel chargé de gérer les fichiers constituant une base
date dernier contrôle,… de données.
• Les liens logiques : un pilote assure un vol, un vol utilise un avion
7 8
SGBDs
• Une bd est utilisée pour • Avantages :
– stocker des informations, – Pas de redondance (cohérence de la base).
– pour être interrogée, – Vision globale du système d’information (politique globale
– mise à jour, d’informatisation).
– … – Indépendance données/traitements.
• Les SGBDs : – Programmation (en SQL, avec des générateurs
– Systèmes de Gestion de Bases de Données d’applications, menus).
– permettent l’automatisation de ces opérations et leur – Accès partagés cohérents (concurrence).
optimisation.
– Vérification globale des droits (sécurité).
– permettent de masquer à l’utilisateur les détails complexes et
fastidieux liés à la gestion de fichiers. – Vérification globale des contraintes (intégrité).
9 10
2
Niveaux de schémas
• Conceptuel
Eleves inscrit Ecoles
• Il existe plusieurs SGBDs, fondés chacun sur – description des entités et
des bases mathématiques solides : associations du monde réel eleves
– Les SGBDs dits navigationnels, implémentés avec • Interne NEl Nom Anne-naissance
Index
un système de fichiers – implémentation physique des
1
2
Dupont
Durand
1986
1987
– Les SGBDs dits relationnels, basés sur l’algèbre entités et associations dans les 3 Marchand 1984
relationnelle, et sont actuellement les plus utilisés : fichiers
Ecoles
• Oracle, • Externe (vues) NEc Nom Total
• SQLServer – description des entités et 1 ENSEIRB 856
2 ENSCPB 423
• Access, associations vues par un utilisateur
3 ENITA 425
• etc (ou un groupe d’utilisateurs)
13 14
15 16
17 18
3
• Solution : créer deux tables, une pour stocker les informations sur les produits et la
deuxième pour stocker les informations sur les fournisseurs :
– Évaluer la taille du fichier contenant 2000 articles si on considère que les 0009 Ordinateur F3 3 000 €
0010 Ordinateur F2 4 000 €
champs sont de tailles respectives 4, 20, 3, 20, 70, 10 octets. … … … …
19 20
21 22
Une Méthodologie
Objectifs
Monde Réel Réel Perçu Modèle Conceptuel • Permettre une meilleure compréhension
– Systèmes réels trop complexes
– Abstraction des aspects cruciaux du problème
– Omission des détails
• Permettre une conception progressive
• Modèle conceptuel : – Abstractions et raffinements successifs
– Possibilité de prototypage rapide
– Découpage en modules ou vues
Indépendant du SGBD – Génération des structures de données et de traitements
• Faciliter la visualisation du système
Indépendant de l’organisation physique – Diagrammes avec notations simples et précises
– Compréhension visuelle et non seulement intellectuelle
Indépendant des traitements
23 24
4
Représentation d’une entité (E/A)
Le modèle Entité – Association (MCD)
• Entité (Classe)
• Le modèle conceptuel de données est la première
représentation des données pour créer la base de
données (et la plus importante) Voitures
• Entité (objet) représente un ensemble d’occurrences Nveh: Int
ayant exactement les mêmes caractéristiques (existence Nom
Type: String
Marque: Constructeur
propre): personne, voiture, entreprise, employé, Vitesse: Int
étudiant, etc. attributs Km : Int
25 26
27 28
0,1
optionnel (0 ou 1)
1,n
• Un client passe au moins une commande (mais peut en passer plusieurs). obligatoire (1 ou plus)
• Une commande est passée par un et un seul client.
3,5
limité (de 3 à 5)
• Les cardinalités sont très importantes: elles déterminent le schéma relationnel
29 30
5
RELATIONS N-aires RELATIONS REFLEXIVES
Date RESPONSABLILITE
1-N 1-N
Est-chef (0-N) A-un-Chef (0-1)
EMPLOYES TRAVAILLE SERVICES
1-N EMPLOYES
Nom NSS Parking Id_S Nom_S Budget
BATIMENTS
Nom NSS Parking
Adresse Capacité
31 32
ENTITES FAIBLES
RELATIONS HIERARCHISEES
• IDEE : Entités sans clé « réelle » qui
Nom NSS Parking n’existent qu’en liaison avec une autre.
Critères Multiples :
Généralisation Cadres ou pas? 0-N ???
EMPLOYES EMPLOYES MUTUELLE AYANT_DROIT
⇒Recouvrements
partiels
∈
Employés_Mens.
IS-A Employés_Hor. * « EMPLOYE » = Entité propriétaire
Prénom Age
Spécialisation de « AYANT_DROIT »
INDICE Sal_Horaires Nb_Heures
33
* SUPPRESSION EN CASCADE 34
1-1 0-N
A priori VOI. PROP. PER.
Sans le « Depuis », une 1-N 1-N
association ternaire GERE Depuis
Historique voiture VOI. PROP. PER.
aurait suffi. 1-N 0-1
Voiture de fonction VOI. PROP. PER.
EMPLOYES 35 36
6
Les Difficultés (1) Les Difficultés (2)
Entité ou Attribut ??
Entité ou Association??
??
PRIX
1-N Coût E3
SEMIS E1 E3
0-N E1
E2
Num.
Quantité COMMANDE Commande
1-N
ADHERENTS
??
Nom Compte
Adresse 39 40
E2 E2
7
Aperçu sur les méthodes orientées objets Représentation (UML)
– Réconciliation données et traitements Classe
– Réutilisation de composants
• Objet (Object) Voitures
– concept, abstraction ou entité clairement distinguable
Nom Nveh: Int
• Classe (Class) Type: String
– description d'un groupe d'objet aux propriétés similaires attributs Marque: Constructeur
Vitesse: Int
• Attribut (Attribute) Km : Int
– propriété nommée d'une classe représentée par une valeur dans chaque opérations
instance Démarrer()
• Opération (Operation) Accélérer()
Rouler(km:Int)
– une fonction/transformation applicable aux objets d'une classe Freiner()
• Méthode (Method)
– une implémentation d'une opération pour une classe
43 44
45 46
47 48
8
Le schéma final
CLIENT PRODUIT
NumClient COMMANDE
passer Référence
NomClient 0,n NumCmde concerner 0,n
1,1 1,n Désignation
AdrClient DateCmde Quantité PrixUnitaire
TélClient
49