diaporama_sgbdr [Lecture seule] [Mode de compatibilité]

publicité
Bases de Données
• Comment enseigner
les bases de données
en Baccalauréat
Professionnel tertiaire !
• Approche par le
concept ou approche
par les sorties ?
1
2
Bases de Données
La méthode de construction d’un MCD
La recherche des données de la base
Il s’agit de trouver et de définir :
- les attributs ou propriétés des entités,
- les attributs des associations,
- les données calculées dont on peut avoir besoin. Elles
sont calculées dans les requêtes ou formulaires ou les
états. L’ensemble des informations constitue les données
de la base.
Cette recherche aboutira à la mise en évidence des
entités.
3
Bases de Données
Le dictionnaire des données
Définition
Le dictionnaire des données est à la fois le support du travail et le
résultat de la recherche et il analyse des données. Il se présente
sous la forme d'un tableau.
Présentation
Dans ce tableau, chaque donnée est représentée par :
1/ son nom informatique, c'est-à-dire un mnémonique ou un nom en
clair,
2/ une description,
3/ son type numérique, alphabétique, logique...
4/ sa dimension en nombre de caractères,
4
Bases de Données
Le schéma de la base
Au stade de la conception, on réalise le schéma
conceptuel des données.
FAMILLE
N°°famille
Nomchef
Prénomchef
Numrue
Nomrue
Adresseville
Téléphone
Nbreenfants
ENFANT
1,1
1,n
Appartenir
N°°enfant
NomEnfant
PrénomEnfant
DateNaissance
Datecréation
ParticularitéAlim
5
Bases de Données
Au stade de la mise en œuvre, on réalise le schéma
physique de la base :
6
Bases de Données
• Les entités :
Nom de l’entité
SALARIES
SAL_NUM_SS
L’entité récapitule les données de même
nature. Ainsi, l’entité SALARIES va récapituler
toutes les caractéristiques de chaque salarié
de l’entreprise.
Caractéristiques des éléments de
l’entité, les caractéristiques des
salariés dans le cas présent. Ces
caractéristiques prennent le nom
de propriétés ou attributs.
SAL_NOM
SAL_PRENOM
SAL_ADRESSE
Propriétés de l’entité SALARIES
SAL_CP
SAL_VILLE
7
Bases de Données
• Identifiant d’Entité
Toute entité doit obligatoirement posséder une propriété identifiante. Le choix
de cette propriété est libre. Cependant, le fait d’élire une propriété comme
identifiante entraîne deux conséquences :
- Son contenu ne pourra jamais être vide. Elle devra obligatoirement être
renseignée.
- Les doublons seront interdits. Ainsi, si je désigne le nom d’un salarié,
SAL_NOM comme propriété identifiante, je ne pourrai jamais dans mon
système d’informations avoir deux noms de salarié identiques.
La propriété
SALARIES
déclarée identifiante
SAL_NUM_SS
est soulignée.
SAL_NOM
Le fait de choisir le numéro
de Sécurité Sociale comme
identifiant, correspond aux
deux contraintes, toujours
renseigné et impossibilité de
doublons.
Toute entité doit posséder une propriété identifiante
8
Bases de Données
• Représentation tabulaire des informations
SAL_NUM_SS
SAL_NOM
SAL_PRENOM
1491124322035
Delage
Robert
Occurrences de l’entité
2541086054678 Aubert
Evelyne
1520107834456 Ait-ouadi
Farid
Dans le cas ci-dessus, l’entité SALARIES est représentée sous forme
tabulaire. Son contenu représente les éléments d’information sur les
caractéristiques de l’entité. Chaque ligne prend le nom d’occurrence. Ainsi,
1491224322035, Delage, Robert est la première occurrence de l’entité
SALARIES qui en comporte trois dans le cas présent.
9
Bases de Données
• L’association
Il peut arriver qu’une relation «naturelle» ou forte existe entre deux entités.
Ainsi, si dans une entreprise il existe une entité SALARIES et une entité
SERVICES de l’entreprise, il existe à l’évidence une relation « naturelle » entre
ces deux objets qui peut être caractérisée par un verbe comme travaille. Cette
relation se nomme une association et se représente par le symbole :
SALARIES
SERVICES
SAL_NUM_SS
Lien
SAL_NOM
Travaille
Tra_Date
SAL_PRENOM
SER_NUM
SER_NOM
SER_DESCRIPTION
SAL_ADRESSE
SAL_CP
SAL_VILLE
Lien
Nb : Une association peut être porteuse de
propriétés, Tra_Date dans le cas présent 10
Bases de Données
• Les cardinalités entre deux entités
Les cardinalités d’une entité vers une autre, vont avoir pour but d’indiquer combien
de fois l’événement va se produire au minimum = Cardinalités mini (0 ou 1 fois) et
combien de fois l’événement va se produire au maximum 1 ou plusieurs fois (n).
Cardinalités Minimales : Reprenons notre exemple :
Prenons un premier sens de lecture de SALARIES vers SERVICES. Nous devrons
répondre à la question suivante :
Au Minimum
: Un salarié travaille dans 0 ou 1 service, en d’autres termes,
un salarié peut-il ne pas travailler (ne pas être affecté) dans un service ?
Si la réponse est Oui, elle sera matérialisée par le nombre 0 ou, si la réponse est
Non, cela signifiera qu’il est obligatoirement affecté à un service.
Cardinalité Mini
SALARIES
SAL_NUM_SS
SAL_NOM
0,
Travaille
Tra_Date
SERVICES
SER_NUM
SER_NOM
SER_DESCRIPTION
Sens de lecture
11
Bases de Données
• Cardinalités Maximales :
Au Maximum : Un salarié travaille au maximum dans un service ou peut-il
travailler, (être affecté) dans plusieurs services ?
Si la réponse est : Il travaille (il est affecté) dans au maximum un service, la
cardinalité maxi sera 1.
Sinon, s’il peut travailler dans plusieurs services, la réponse sera plusieurs et sera
matérialisée par n .
Dans le cas ci-dessous, la lecture de SALARIE vers SERVICE devient :
Un salarié travaille au minimum 0 fois dans un service (ou il peut ne pas
travailler, être affecté, dans un service mais par contre il travaille au maximum
dans 1 service).
SERVICES
Cardinalité Maxi
0,1
SALARIES
SER_NUM
Travaille
SAL_NUM_SS
SER_NOM
Tra_Date
SAL_NOM
SER_DESCRIPTION
12
Sens de lecture
Bases de Données
• Définition des cardinalités de SERVICES vers SALARIES
SALARIES
1,n
0,1
SAL_NUM_SS
SAL_NOM
SERVICES
Travaille
SER_NUM
Tra_Date
SER_NOM
Sens de lecture
SER_DESCRIPTION
Cardinalités Mini :
- Un service fait travailler au moins un salarié (Card Mini = 1).
Cardinalités Maxi :
- Un service fait travailler au maximum plusieurs salariés,
(Card Maxi = n).
Ce Modèle Conceptuel de Données (M.C.D.) est maintenant complet et porteur de sens.
La lecture est double, de SALARIES vers SERVICES, un salarié peut ne pas travailler
dans un service (Cardinalité Mini=0) mais s’il est affecté, il est affecté au plus dans un
service (Cardinalité Maxi=1). A contrario de SERVICES vers SALARIES, un service fait
travailler au moins un salarié (Cardinalité Mini=1), mais il peut au maximum en faire
13
travailler plusieurs (Cardinalité Maxi=n)
Bases de Données
• Les cardinalités sont porteuses de sens
PROPRIETAIRES
BIENS
1,n
PRO_NUM
Possède
1,1
BIE_NUM
BIE_DESIGNATION
PRO_NOM
BIE_ADRESSE
Ce MCD ne prend pas en compte la Multi_Propriété
ou les biens indivis.
BIE_VILLE
BIE_CP
PROPRIETAIRES
PRO_NUM
1,n
Possède
PRO_NOM
1,n
BIENS
BIE_NUM
BIE_DESIGNATION
BIE_ADRESSE
Ce MCD prend en compte la Multi_Propriété ou les
biens indivis.
BIE_VILLE
BIE_CP
14
Bases de Données
• Le Modèle Physique des Données (MPD)
Pour passer du Modèle Conceptuel des Données (MCD) au Modèle Physique
des données (MPD), il suffit d’analyser les cardinalités maxi entre deux entités et
d’appliquer la règle de passage du MCD au MPD.
PROPRIETAIRES
0,
n
Possède
1,
1
BIENS
15
Bases de Données
• Modèle Physique des données et ACCESS
Cas 1 : Cardinalités Maxi Singulier Pluriel ou Pluriel Singulier (.,1->.,n ou .,n->.,1)
La Clef étrangère PRO_NUM dans
BIENS permet de faire le lien, la jointure,
avec la table PR0PRIETAIRES
Une fois la jointure établie
sur le Numéro de
propriétaire, la requête
permet d’aller interroger
les informations
contenues dans les deux
tables
16
Bases de Données
• Modèle Physique des données et ACCESS
Cas 2 : Cardinalités Maxi Pluriel Pluriel (.,n ->.,n )
Si par requête, nous voulons connaître les propriétaires des biens, nous devrons :
- Choisir les trois tables PROPRIETAIRES, Possède et BIENS = Sélection
- Vérifier les relations entre les différentes tables = Jointures
17
- Indiquer les champs à afficher =
Projection
Bases de Données
• Le concept de requête
La requête représente une
extraction d’informations
présentes dans la base de
données. Cette extraction
est mémorisée sous forme
d’un langage
d’interrogation en SQL
(langage structuré des
requêtes)
Nous retrouvons la Sélection
La jointure «JOIN»
La projection PRO_NUM,…
L’instruction WHERE indique
une condition, N° de
propriétaire = «01» dans
notre exemple.
18
Bases de Données
• Le concept de requête
Résultat de l’extraction :
Cette vision du contenu de la base n’est qu’une extraction des données qui
correspondent à un instant «T» aux critères demandés, N°° de produit = «01»
dans le cas présent. Cette projection n’est pas sauvegardée sur le disque dur.
Seules les instructions SQL sont sauvegardées. De ce fait, le fait de faire
exécuter la requête permet de toujours obtenir les dernières données
disponibles dans la base. Le programme est indépendant des données.
NB : Il faut s’efforcer de donner un nom à la requête de telle manière que sa
lecture permette de comprendre ce qu’elle va réaliser comme opération.
R01_Immeubles_Propriétaires permet de comprendre que nous allons obtenir
19 le
nom des propriétaires des immeubles présents dans la base.
Bases de Données
• Les requêtes : Approche par les sorties
Cette méthode consiste à partir du résultat à obtenir. Dans notre exemple des
propriétaires et des immeubles, nous désirons connaître les immeubles possédés
par le propriétaire N° 1 ALBERT.
N° du
Nom du
N° de
Désignation
Les informations attendues sont :
Propriétaire
Propriétaire
l'immeuble
de l'immeuble
Pour obtenir ce résultat les informations sont à rechercher dans les tables
PROPRIETAIRES et BIENS. Cependant, il ne faut pas omettre que dans le cas
de cardinalités Pluriel (n), Pluriel (n), une table de correspondance Possède
dans notre exemple, permet de mettre en liaison la table des PROPRIETAIRES
avec la table des BIENS. Nous devrons donc sélectionner :
La table PROPRIETAIRE
La table Possède
La table BIENS
20
Bases de Données
• Les requêtes : Approche par les sorties
Pour faciliter la compréhension des attendus, les informations souhaitées peuvent
être récapitulées dans un tableau.
Informations utiles
Nom des attributs
Nom de la table utilisée
Numéro du propriétaire
PRO_NUM
PROPRIETAIRE
Nom du propriétaire
PRO_NOM
PROPRIETAIRE
Numéro de l’immeuble
BIE_NUM
BIENS
Nom de l’immeuble
BIE_DESIGNATION
BIENS
Etapes à suivre pour réaliser la requête :
Etape 1 : La
Opérations
Sélection : Objet support de la condition, N°° Propriétaire=«01»
Table(s) ou requête(s) Critères
sources(s)
de
sélection
Sélection Possède
(Cette table contient
les occurrences
recherchées)
PRO_NUM
=«01»
Champ de
jointure
Champ(s)
projeté(s)
Requête
résultat
R01_Immeub
les_Propriéta
ires
21
Bases de Données
• Les
requêtes : Approche par les sorties
Pour illustrer cette
approche, visualisons sur
ACCESS la démarche. Le
résultat obtenu à ce stade
indique que le propriétaire
dont le N° est 01 possède
deux occurrences, c’est-àdire deux biens.
A ce stade nous ne connaissons pas encore ni le nom
du propriétaire, ni la désignation des biens.
Etapes à suivre pour réaliser la requête :
Etape 2 : La Jointure : Où se trouvent les informations recherchées et sur
quel(s) champ(s) va s’établir la jointure (l’association) entre les tables et requêtes
Opérations
Table(s) ou requête(s)
sources(s)
Jointure
R01_Immeuble_Propri.
PROPRIETAIRES
BIENS
Critères de
sélection
Champ(s)
de jointure
PRO_NUM
BIE_NUM
Champ(s)
projeté(s)
Requête
résultat
R02_Immeubl
es_Propriétair
es
22
Bases de Données
• Les requêtes : Approche par les sorties
La jointure permet de
mettre en relation les
objets R01_Immeuble
avec PROPRETIARES et
BIENS à partir de
PRO_NUM et de
BIE_NUM
Etapes à suivre pour réaliser la requête :
Etape 3 : La
apparaître
Projection : Quels sont les champs que nous voulons voir
Opérations
Table(s) ou requête(s)
sources(s)
Projection
R02_Immeuble_Proprié
taires.
Critères de
sélection
Champ(s)
de jointure
Champ(s)
projeté(s)
Requête
résultat
PRO_NUM
PRO_NOM
BIE_NUM
BIE_DESI.
Liste des
biens du
propriétaire
23
n° 01.
Bases de Données
• Les requêtes : Approche par les sorties
Condition
Projection
des champs
Résultats de la requête
R02_Immeubles_Propriétaires
24
Bases de Données
Vocabulaire à retenir :
MCD
- Entité – Propriétés – Association – Identifiant –
Cardinalités (Mini et Maxi) – Occurrences
MDP
- Table – Nom de champ – Jointure – Clef
primaire – Sélection – Projection
25
Téléchargement