Bases de données
Luc Bouganim – [email protected]
http://www-smis.inria.fr/~bouganim/afti
• Conception de bases de données
• Modèle Relationnel
•SQL
•JDBC
• Transaction, Optimisation
• Sécurité
•…
2
3
Plan de la session (1)
Jour 1: Matin
Problèmes des approches fichiers, l’approche base de données
Conception de bases de données (light)
Exercices sur un cas pratique
Le modèle relationnel
SQL : le LDD (Langage de Définition de Données)
Jour 1: Après midi
Création d'une base Oracle, insertion, chargement massif
Jour 2: Matin
Vue d'ensemble des fonctionnalités des SGBD
SQL : le LMD (Langage de Manipulation de données)
SQL et JAVA : JDBC
Jour 2: Après midi
Interrogation d'une base de données en SQL
4
Plan de la session (2)
Jour 3: Matin
Méthodologie SQL
Optimisation, Concurrence d'accès, Sécurité / Confidentialité
Jour 3: Après midi
Interrogation avancée d'une base de données en SQL
Interrogation d'une BD depuis un programme JAVA
Jour 4: Matin
(Cryptographie et bases de données)
(Dictionnaire de données)
Injection SQL
Concurrence d'accès
Jour 4: Après midi
Examen (2h)
Problèmes des approches fichiers,
l'approche base de données
6
Chirurgie
Psychiatrie
Systèmes de fichiers Caractéristiques
Comptabilité
Consultations
Problèmes
7
Plusieurs applications Caractéristiques
Plusieurs applications
plusieurs formats
plusieurs langages
Problèmes
Difficultés de gestion
Dupont
Symptomes : y
Turlututu : sqj
Symptomes : y
Turlututu : sdd
Analyses : xxx
Dupond
Turlututusqjsk
Symptom: yyyy
Analyses xxxx
Turlututudhjsd
Analyses :xx
Duipont
Turlututu : sq
Symptomyyyy
Analysesxxxx
Turlututudhjsd
Duhpon
Symptomes : yy
Analyses : xxxx
Symptomes : yy
8
Redondance (données) Caractéristiques
Plusieurs applications
plusieurs formats
plusieurs langages
Redondance de données
Problèmes
Difficultés de gestion
Incohérence des données
Dupont
Symptomes : y
Turlututu : sqj
Symptomes : y
Turlututu : sdd
Analyses : xxx
Dupond
Turlututusqjsk
Symptom: yyyy
Analyses xxxx
Turlututudhjsd
Analyses :xx
Duipont
Turlututu : sq
Symptomyyyy
Analysesxxxx
Turlututudhjsd
Duhpon
Symptomes : yy
Analyses : xxxx
Symptomes : yy
9
Interrogations Caractéristiques
Plusieurs applications
plusieurs formats
plusieurs langages
Redondance de données
Pas de facilité d’interrogation
Question développement
Problèmes
Difficultés de gestion
Incohérence des données
Coûts élevés
Maintenance difficile
Dupont
Symptomes : y
Turlututu : sqj
Symptomes : y
Turlututu : sdd
Analyses : xxx
Dupond
Turlututusqjsk
Symptom: yyyy
Analyses xxxx
Turlututudhjsd
Analyses :xx
Duipont
Turlututu : sq
Symptomyyyy
Analysesxxxx
Turlututudhjsd
Duhpon
Symptomes : yy
Analyses : xxxx
Symptomes : yy
ChiruSoft
ConsultSoft
PsychiaSoft
ComptaSoft
10
Pannes ??? Caractéristiques
Plusieurs applications
plusieurs formats
plusieurs langages
Redondance de données
Pas de facilité d’interrogation
Question développement
Redondance de code
Problèmes
Difficultés de gestion
Incohérence des données
Coûts élevés
Maintenance difficile
Gestion de pannes ???
Dupont
Symptomes : y
Turlututu : sqj
Symptomes : y
Turlututu : sdd
Analyses : xxx
Dupond
Turlututusqjsk
Symptom: yyyy
Analyses xxxx
Turlututudhjsd
Analyses :xx
Duipont
Turlututu : sq
Symptomyyyy
Analysesxxxx
Turlututudhjsd
Duhpon
Symptomes : yy
Analyses : xxxx
Symptomes : yy
ChiruSoft
ConsultSoft
PsychiaSoft
ComptaSoft
11
Partage de données Caractéristiques
Plusieurs applications
plusieurs formats
plusieurs langages
Redondance de données
Pas de facilité d’interrogation
Question développement
Redondance de code
Problèmes
Difficultés de gestion
Incohérence des données
Coûts élevés
Maintenance difficile
Gestion de pannes ???
Partage des données ???
Dupont
Symptomes : y
Turlututu : sqj
Symptomes : y
Turlututu : sdd
Analyses : xxx
Dupond
Turlututusqjsk
Symptom: yyyy
Analyses xxxx
Turlututudhjsd
Analyses :xx
Duipont
Turlututu : sq
Symptomyyyy
Analysesxxxx
Turlututudhjsd
Duhpon
Symptomes : yy
Analyses : xxxx
Symptomes : yy
ChiruSoft
ConsultSoft
PsychiaSoft
ComptaSoft
12
Confidentialité Caractéristiques
Plusieurs applications
plusieurs formats
plusieurs langages
Redondance de données
Pas de facilité d’interrogation
Question développement
Redondance de code
Problèmes
Difficultés de gestion
Incohérence des données
Coûts élevés
Maintenance difficile
Gestion de pannes ???
Partage des données ???
Confidentialité ???
Dupont
Symptomes : y
Turlututu : sqj
Symptomes : y
Turlututu : sdd
Analyses : xxx
Dupond
Turlututusqjsk
Symptom: yyyy
Analyses xxxx
Turlututudhjsd
Analyses :xx
Duipont
Turlututu : sq
Symptomyyyy
Analysesxxxx
Turlututudhjsd
Duhpon
Symptomes : yy
Analyses : xxxx
Symptomes : yy
ChiruSoft
ConsultSoft
PsychiaSoft
ComptaSoft
13
L’approche ‘‘Bases de données’’ (1)
Modélisation des données
Eliminer la redondance de données
Centraliser et organiser correctement les données
Plusieurs niveaux de modélisation
Outils de conception
Logiciel «Système de Gestion de Bases de Données»
Factorisation des modules de contrôle des applications
- Interrogation, cohérence, partage, gestion de pannes, etc…
Administration facilitées des données
14
L’approche ‘‘Bases de données’’ (2)
BD
VIII - Concurrence
d’accès
VII - Gestion des
pannes
I- Indépendance
Physique
IX - Gestion de la
confidentialité
II- Indépendance
Logique
VI - Gestion de la
cohérence
X - Standards
V - Optimisation des
questions
III – Langage de
manipulation
IV - Gestion des
vues
Conception de bases de données
16
Relationnel
Organisation physique des données
Structures de stockage des données
Structures accélératrices (index)
Dépendant du
modèle de données
Dépendant du
SGBD
Modèle
Physique
XMLObjetCodasyl
Dépendant du
modèle de données
Indépendant du
SGBD
Modèle
logique
Indépendant du
modèle de données
Indépendant du
SGBD
Modèle
conceptuel
Réel
Modélisation du réel
Médecin effectue Visite
17
Méthode de conception ?
Plusieurs façons d’aborder la conception d’une BD
Intuition + création directe de la BD
Suivre une méthode de conception (MCDMLDMPD)
Entité/Association (E/A) ou Entity/Relationship (E/R)
•Merise
•UML
Suivre son intuition peut conduire à des erreurs
– Redondances
Valeurs nulles
Difficulté de gestion
Impossibilité de répondre à certaines questions
Une fois la base de données crée, difficile à modifier… (cf. TP)
Les outils de conception sont une aide précieuse
18
Exemple de mauvaise conception (1)
Redondance des données et incohérence potentielle
Personne répétée pour chaque voiture : ex. Si Joe Bar change
de ville et qu’une seule ligne est mise à jour…
Redondance Ville/Pays : impact d’une erreur de saisie
Anomalies de mises à jour et besoin de valeurs nulles.
Comment insérer une personne sans voiture ?
Sémantique de calculs avec des valeurs nulles…
Comment supprimer la dernière voiture d'une personne ?
Nom Prénom Ville Pays Immatriculation Marque Couleur
1 Bar Joe Paris France 125PP75 Renault Rouge
2 Dean Pascal Vence France 453LL06 Peugeot Vert
3 Ben Zoe Lyon France 526UU69 Renault Rouge
4 Bar Joe Paris France 257LPM75 Renault Jaune
19
Exemple de mauvaise conception (2)
Redondance cachée :
Nombre d’enfants vs enfants
Difficulté de gestion
Comment gérer les personnes ayant plus de 3 enfants !
Comment afficher la liste des enfants ?
Nom Prénom Ville Pays Enfant 1 Enfant2 Enfant3 NbEnfants
1 Bar Joe Paris France Paul Zoe 2
2 Dean Pascal Vence France Lili 1
3 Ben Zoe Lyon France Sam Tor Tur 3
4 Cat Tom Lens France 0
20
TRAITEMENTDONNEES
MPT
Description de l’architecture des
traitements, algorithmes
MPD
Création de la base de donnée
Modèle
Physique
MLT
Structuration en procédure
MLD
Modèle logique (e.g, relationnel)
Modèle
logique
MCT
Quels traitements ?
MCD
Quelles données ?
Quelle organisation ?
Modèle
conceptuel
Réel
Méthodes de conception : Exemple Merise
Objectif du cours : E/A, Merise, UML ? E/A light, Merise ultra-light
1 / 74 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !