Title: Bases de Donn
1Bases de Données et pédagogie
- Comment enseigner les bases de données en
Baccalauréat Professionnel tertiaire ? - Approche par le concept ou approche par les
sorties ?
2Bases de Données et pédagogie
3Bases de Données et pédagogie
- 1 INTRODUCTION
- Pourquoi l'analyse conceptuelle? Qu'est-ce-que
l'analyse conceptuelle? - 1.1 La situation
- La situation est toujours ainsi au point de
départ
Un problème de gestion Un outil informatique
Un utilisateur doit décider, agir dans son organisation. Il a besoin d'informations pour résoudre un problème particulier. Il veut automatiser certains traitements. Un ordinateur ses logiciels PC Access ou StarOffice...
4Bases de Données et pédagogie
- 1.2 - La démarche par étapes
- 1.2.1 - L'analyse préalable
- Faire le tour du problème interview,
discussion, documents - Proposer une idée de solution avec les choix
majeurs - Evaluer le projet de solution
5Bases de Données et pédagogie
- 1.2.2 - La conception de la solution
- Définir les données et les traitements
- 1.2.3 - Le développement du projet
- La description détaillée de l'organisation des
données c'est à dire de la saisie, l'édition, les
bases de données.La réalisation et tests. - 1.2.4 - La mise en œuvre
- Saisie complète des donnéesFormation des
utilisateursDémarrage et mise au point finale
6Bases de Données et pédagogie
- 1.3 Les différents niveaux danalyse
Conception 1 Le niveau conceptuel le MCD La solution est définie de manière abstraite par un modèle conceptuel le modèle entité-association appelé aussi modèle relationnel.
Conception 2 Le niveau logique ou organisationnel modèle logique des données avec son Schéma conceptuel des données Développement Le niveau technique avec le Schéma physique de la base Il faut rendre le MCD exploitable par le logiciel de base de données. On intègre à la solution, les caractéristiques du logiciel. On transforme le modèle selon un formalisme fourni par le modèle relationnel. Celui-ci est à la base des SGBDR. Cest la description détaillée de la solution.
7Bases de Données et pédagogie
- 1.4 - L' analyse conceptuelle des données est
- La recherche des informations élémentaires d'un
problème de gestion système de gestion. - La compréhension des règles de gestion
- La représentation normalisée du système
d'information c'est à dire la modélisation. Le
"Modèle conceptuel de données" (MCD ) que nous
utiliserons est le "Modèle Entité Association". - La schématisation du modèle (SCD, Schéma
conceptuel de données). La représentation sous
forme de schéma visuel d'une base de données
conceptualisée se fait selon un modèle dont la
définition constitue une sorte de norme
universelle. Le schéma réalisé conformément au
modèle constitue un support / moyen de
communication entre les acteurs du système et les
informaticiens (éventuellement). - L'analyse conceptuelle débouche bien entendu sur
la mise en oeuvre technique, accompagnée de la
réalisation de supports visuels
8Bases de Données et pédagogie
- 2 Le vocabulaire et les règles du MCD
- Le vocabulaire précis et les règles sont
indépendants des logiciels. - 2.1 - L'entité
- 2.1.1 - Définition
- La connaissance de l'activité de l'organisation
étudiée et des procédures de gestion, permet de
définir les ensembles de données nécessaires à la
gestion les entités.
9Bases de Données et pédagogie
Lentité récapitule les données de même nature.
Ainsi, lentité SALARIES va récapituler toutes
les caractéristiques de chaque salarié de
lentreprise.
Nom de lentité
Caractéristique des éléments de lentité, les
caractéristiques des salariés dans le cas
présent. Ces caractéristiques prennent le nom de
propriétés ou attributs
SALARIES
SAL_NUM_SS SAL_NOM SAL_PRENOM SAL_ADRESSE SAL_CP S
AL_VILLE
Propriétés ou attributs de lentité SALARIE
Les informations élémentaires qui décrivent une
entité sont appelés Attributs ou
Propriétés de lentité
10Bases de Données et pédagogie
- 2.1.2 Identifiant dEntité
- 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 dun salarié, SAL_NOM comme
propriété identifiante, je ne pourrais jamais
dans mon système dinformations avoir deux nom de
salarié identiques.
Le fait de choisir le numéro de Sécurité Sociale
comme identifiant, correspond aux deux
contraintes, toujours renseigné et impossibilité
de doublons.
SALARIES
La propriété déclarée identifiante est soulignée.
SAL_NUM_SS SAL_NOM
Toute entité doit posséder une propriété
identifiante
Lidentifiant est la Propriété ou Attribut qui
permet de distinguer un élément de lentité de
manière UNIQUE
11Bases de Données et pédagogie
- 2.1.3 Représentation tabulaire des informations
SAL_NUM_SS
SAL_PRENOM
SAL_NOM
1491124322035
Delage
Robert
Occurrences de lentité
2541086054678
Aubert
Evelyne
1520107834456
Ait-ouadi
Farid
Dans le cas ci-dessus, lentité SALARIE est
représentée sous forme tabulaire. Son contenu
représente les éléments dinformation sur les
caractéristiques de lentité. Chaque ligne prend
le nom doccurrence. Ainsi, 1491224322035,
Delage, Robert est la première occurrence de
lentité SALARIE qui en comporte trois dans le
cas présent.
12Bases de Données et pédagogie
- 2.1.5 Correspondance avec un logiciel SGBDR
- Les tables
- On passe ici du modèle logique (en l'occurrence
le modèle relationnel) au niveau technique ou
physique. Pratiquement, on réalise ce passage sur
l'ordinateur.Une entité donne naissance à une
table dans un SGBDR. La table est un objet
informatique regroupant ici tous les individus
(les occurrences) de l'entité. - les colonnes ou champs dans la table de
l'entité, chaque colonne correspond à un attribut
de l'entité. - un attribut particulier est l' "identifiant"
de chaque "individu" (occurrence), c'est à dire
un numéro unique pour chaque individu. C'est la
"clé primaire" de la table. - les lignes chaque ligne correspond à une
occurrence de l'entité, ou "enregistrement". Une
occurrence est notée sur une seule ligne.
13Bases de Données et pédagogie
Il peut arriver quune relation naturelle ou
forte existe entre deux entités. Ainsi, si dans
une entreprise il existe une entité SALARIES et
une entité SERVICES de lentreprise, 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 SAL_NOM SAL_PRENOM SAL_ADRESSE SAL_CP S
AL_VILLE
SER_NUM SER_NOM SER_DESCRIPTION
Lien
Travaille
Tra_Date
Lien
Nb Une association peut être porteuse de
propriétés, Tra_Date dans le cas présent
14Bases de Données et pédagogie
- Les cardinalités entre deux entités
Les cardinalités dune entité vers une autre,
vont avoir pour but dindiquer 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 une premier
sens de lecture de SALARIE vers SERVICE. Nous
devrons répondre à la question suivante Au
Minimum Un salarié travaille dans 0 ou 1
service, en dautres 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. Si la réponse est
Non cela signifiera quil est obligatoirement
affecté à un service.
SERVICES
Cardinalité Mini
SALARIES
SER_NUM SER_NOM SER_DESCRIPTION
0,
Travaille
SAL_NUM_SS SAL_NOM
Tra_Date
Sens de lecture
15Bases de Données et pédagogie
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
une service, la cardinalité maxi sera 1 Sinon,
sil 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 SER_NOM SER_DESCRIPTION
Travaille
SAL_NUM_SS SAL_NOM
Tra_Date
16Bases de Données et pédagogie
- Définition des cardinalités de SERVICES vers
SALARIES
SERVICES
SALARIES
0,1
1,n
Travaille
SER_NUM SER_NOM SER_DESCRIPTION
SAL_NUM_SS SAL_NOM
Tra_Date
Sens de lecture
Cardinalités Mini - Un service fait travailler
au moins un salarié (Card Min 1). Cardinalités
Maxi - Un service fait travailler au maximum
plusieurs salariés, (Card Max 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é Maxi0) mais sil est affecté, il
est affecté au plus dans un (Cardinalité Min1).
A contrario de SERVICES vers SALARIES, un service
fait travailler au moins un salarié (Cardinalité
Mini1), mais il peut au maximum en faire
travailler plusieurs (Cardinalité Maxin)
17Bases de Données et pédagogie
- 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 danalyser les cardinalités maxi entre
deux entités et dappliquer la règle de passage
du MCD au MPD.
0,n
1,1
Possède
PROPRIETAIRES
BIENS
18Bases de Données et pédagogie
- La méthode de construction dun MCD
- 3.1 La recherche des données de la base
- Il sagit 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. Elle sont calculées dans les requêtes ou
formulaires ou les états. Lensemble des
informations constitue les données de la base.
Cette recherche aboutira à la mise en évidence
des entités
19Bases de Données et pédagogie
- 3.2 Le dictionnaire des données
- 3.2.1 - Définition Le dictionnaire des données
est à la fois le support du travail et le
résultat de la recherche et analyse des données.
Il se présente sous la forme d'un tableau - 3.2.2 - PrésentationDans 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, 5/
éventuellement les calculs qui permettent de la
générer
20Bases de Données et pédagogie
- 3.3 - Le schéma de la base
- Au stade de la conception, on réalise le schéma
conceptuel des données.
FAMILLE Nfamille Nomchef Prénomchef Numrue Nomru
e Adresseville Téléphone Nbreenfants
ENFANT Nenfant NomEnfant PrénomEnfant DateNaissa
nce Datecréation ParticularitéAlim
1,1
1,n
Appartenir
21Bases de Données et pédagogie
- Au stade de la mise en œuvre, on réalise le
schéma physique de la base
22Bases de Données et pédagogie
Bases de Données et pédagogie
- Modèle Physique des données et ACCESS
- Modèle Physique des données et ACCESS
Cas 1 Cardinalités Maxi Singulier Pluriel ou
Pluriel Singulier (.,1-gt.,n ou .,n-gt.,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 daller
interroger les informations contenues dans les
deux tables
23Bases de Données et pédagogie
- Modèle Physique des données et ACCESS
Cas 2 Cardinalités Maxi Pluriel Pluriel (.,n
-gt.,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 - Indiquer les champs à afficher Projection
24Bases de Données et pédagogie
La requête représente une extraction
dinformations présentes dans la base de données.
Cette extraction est mémorisée sous forme dun
langage dinterrogation en SQL
Nous retrouvons la Sélection La jointure
JOIN La projection PRO_NUM, Linstruction
WHERE indique une condition, N de propriétaire
01 dans notre exemple.
25Bases de Données et pédagogie
Résultat de lextraction
Cette vision du contenu de la base nest quune
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
nest pas sauvegardée sur le disque dur. Seule
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 sefforcer
de donner un nom à la requête de telle manière
que sa lecture permette de comprendre ce quelle
va réaliser comme opération. R01_Immeubles_Proprié
taires permet de comprendre que nous allons
obtenir le nom des propriétaires des immeubles
présents dans la base.
26Bases de Données et pédagogie
- 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. Les informations attendues sont
N du Nom du N de Désignation
Propriétaire Propriétaire l'immeuble de l'immeuble
Pour obtenir ce résultat les informations sont à
rechercher dans les tables PROPRIETAIRES et
IMMEUBLES. 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
IMMEUBLES. Nous devrons donc sélectionner La
table PROPRIETAIRE La table Possède La table
IMMEUBLE
27Bases de Données et pédagogie
- 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 limmeuble BIE_NUM BIENS
Nom de limmeuble BIE_DESIGNATION BIENS
Etapes à suivre pour réaliser la requête Etape
1 La Sélection Objet support de la condition,
N Propriétaire01
Opérations Table(s) ou requête(s) sources(s) Critères de sélection Champ de jointure Champ(s) projeté(s) Requête résultat
Sélection Possède (Cette table contient les occurrences recherchées) PRO_NUM01 R01_Immeubles_Propriétaires
28Bases de Données et pédagogie
- 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, cest-à-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 (lassociation) entre les tables et
requêtes
Opérations Table(s) ou requête(s) sources(s) Critères de sélection Champ(s) de jointure Champ(s) projeté(s) Requête résultat
Jointure R01_Immeuble_Propri. PROPRIETAIRES IMMEUBLES PRO_NUM BIE_NUM R02_Immeubles_Propriétaires
29Bases de Données et pédagogie
- Les requêtes Approche par les sorties
La jointure permet de mettre en relation les
objets R01_Immeuble avec PROPRETIARES et
IMMEUBLES à partir de PRO_NUM et de BIE_NUM
Etapes à suivre pour réaliser la requête Etape
3 La Projection Quels sont les champs que
nous voulons voir apparaître
Opérations Table(s) ou requête(s) sources(s) Critères de sélection Champ(s) de jointure Champ(s) projeté(s) Requête résultat
Projection R02_Immeuble_Propriétaires. PRO_NUM PRO_NOM BIE_NUM BIE_DESI. Liste des biens du propriétaire n 01.
30Bases de Données et pédagogie
- Les requêtes Approche par les sorties
Condition
Projection des champs
Résultats de la requête R02_Immeubles_Propriétaire
s
31Bases de Données et pédagogie
- Les requêtes Approche par les sorties
- Autre solution Commencer par la jointure
Etapes à suivre pour réaliser la requête Etape
1 La Jointure Où se trouvent les informations
recherchées et sur quel(s) champ(s) va sétablir
la jointure (lassociation) entre les tables et
requêtes
Opérations Table(s) ou requête(s) sources(s) Critères de sélection Champ(s) de jointure Champ(s) projeté(s) Requête résultat
Jointure PROPRIETAIRES Possède IMMEUBLES PRO_NUM BIE_NUM R01_Immeubles_Propriétaires
32Bases de Données et pédagogie
- Les requêtes Approche par les sorties
- Autre solution Commencer par la jointure
Etapes à suivre pour réaliser la requête Etape
2 La sélection Objet support de la condition,
N Propriétaire01
Opérations Table(s) ou requête(s) sources(s) Critères de sélection Champ de jointure Champ(s) projeté(s) Requête résultat
Sélection R01_Immeubles_Propriétaires PRO_NUM01 R01_Immeubles_Propriétaires
33Bases de Données et pédagogie
- Les requêtes Approche par les sorties
- Autre solution Commencer par la jointure
Etapes à suivre pour réaliser la requête Etape
3 La Projection Quels sont les champs que
nous voulons voir apparaître
Opérations Table(s) ou requête(s) sources(s) Critères de sélection Champ(s) de jointure Champ(s) projeté(s) Requête résultat
Projection R01_Immeuble_Propriétaires. PRO_NUM PRO_NOM BIE_NUM BIE_DESI. Liste des biens du propriétaire n 01.
Dans cette approche nous navons quune requête
au lieu de deux.
34Bases de Données et pédagogie
Vocabulaire à retenir - Entité Propriétés -
Association -Identifiant Cardinalités (Mini et
Maxi)- Occurrences
- Outils méthodologiques à retenir
- Nomination dune Propriété
- Passage du MCD au MPD
- Jointure
- Sélection
- Projection