Information et gestion – Spécialité communication – 1re STG Nathan
98
Chapitre 7
Interroger une base de données
Positionnement de la leçon dans le programme
Ce chapitre se situe dans la partie 2 – Le système d’information et les bases de données
(durée indicative : 30 heures) et plus précisément dans les points 2.2. Le modèle relationnel
et 2.3. La base de données.
Extrait du programme
Thèmes
Sens et portée
de l’étude
Notions et contenus
à construire
2.2. Le modèle
relationnel
(10 heures)
Le modèle relationnel apporte
les notions essentielles en matière
de structuration des données. Il permet
d’étudier la conception d’une base de
données (comment elle est construite)
indépendamment de son implantation
technique. Sa connaissance est
indispensable à la maîtrise
des langages d’interrogation des bases
de données dans les différents
domaines d’application
de l’informatique de gestion.
– Les opérateurs relationnels.
Restriction, projection, jointure.
2.3. La base de données
(10 heures)
La base de données est un ensemble
d’informations structurées en tables
dont l’implantation, la mise à jour
et l’exploitation sont réalisées à l’aide
d’un système de gestion de bases
de données. Elle est définie par son
schéma (la structure) et son contenu
(les valeurs).
– Le langage de requête SQL.
Restriction, projection, jointure,
tri.
Indications complémentaires et limites
Le modèle relationnel
« L’étude des opérateurs relationnels prépare l’expression de requêtes dans le langage SQL. »
La base de données
« L’étude de l’organisation des données dans les tables (nom, type, clés) met en évidence les
mécanismes utilisés par les SGBDR pour assurer le contrôle de la cohérence des données lors
d’une mise à jour.
Chapitre 7 – Interroger une base de données
Information et gestion – Spécialité communication – 1re STG Nathan
99
Le recours au langage SQL fonde l’usage d’un raisonnement partant de l’expression du
résultat à obtenir. Son apprentissage, indépendant de l’interface propre à chaque outil,
contribue à l’acquisition progressive de la capacité de passer de l’expression d’un besoin en
langage naturel à sa définition dans un langage formel.
L’étude est volontairement limitée à l’ordre SELECT, en utilisant les clauses d’identification
des sources de données sur une ou plusieurs tables (FROM), de restriction et de jointure
(WHERE) et de tri (ORDER BY). Les fonctions usuelles d’agrégat et de traitement des
chaînes de caractères, des nombres et des dates sont abordées en fonction des besoins. »
Intentions et choix pédagogiques
Les intentions des auteurs, dans ce chapitre, sont :
de montrer :
– que le modèle relationnel abordé dans le chapitre précédent débouche concrètement sur une
base de données,
– qu’il existe des logiciels spécialisés dans la gestion d’une base de données : les SGBDR.
L’enseignant peut faire l’analogie avec un texteur qui traite des documents et un tableur qui
traite des feuilles de calcul. La grande différence tient à la complexité et au volume des
informations que peut gérer une base de données,
– que, comme son nom l’indique, la base de données est bien la base sur laquelle on s’appuie
pour informatiser des applications de gestion,
– que la rigueur et la méthode utilisées pour répartir les informations dans différentes tables
reliées entre elles vont être payantes parce que opérationnelles ;
à travers l’interrogation de la base de données, d’amener peu à peu les élèves à réfléchir à
un ensemble d’opérations, vues comme les primitives d’un nouveau langage. L’enseignant
leur expose des opérations, en les nommant et en précisant bien ce qu’elles font, comme on
le ferait avec des plus petits qui découvriraient les opérations arithmétiques et apprendraient à
les manipuler pour obtenir, à partir de nombres, d’autres nombres. C’est ce que l’on appelle
« apprendre à compter » ; ici, ils vont apprendre à interroger une base de données, c’est-à-dire
manipuler des tables pour obtenir d’autres tables. Il existe un langage algébrique
relationnel, théorisé par Codd, dont la seule vertu est de formaliser les différentes opérations
mises en œuvre et leur enchaînement pour atteindre le résultat demandé. C’est une étape
intermédiaire que l’on peut certes négliger, vu que l’objectif n’est pas de former des
spécialistes du langage SQL, mais savoir que ce langage est à la base du langage SQL permet
de mieux comprendre ce que l’on appelle la « philosophie » de ce langage. Il est capital que
ce langage ne leur apparaisse pas comme magique ; il faut éviter qu’ils tapent un peu au
« feeling » une phrase SQL pour voir le résultat produit et éventuellement modifier la phrase
pour s’approcher de ce qui est demandé ;
de faire découvrir aux élèves ce qu’est un langage informatique avec toute sa puissance
mais aussi toutes ses exigences en terme de rigueur. Comme l’on s’adresse à une machine, la
moindre erreur d’orthographe et de syntaxe sera fatale ;
d’utiliser l’outil informatique, en l’occurrence un SGBDR (vraisemblablement Access).
Toutefois, il n’est peut-être pas « payant » de commencer à faire réaliser aux élèves des
requêtes à travers les assistants que proposent tous les SGBDR pour permettre à un utilisateur
non averti de programmer des requêtes en s’affranchissant de la connaissance du langage
SQL. Par contre, il faut passer rapidement sur l’ordinateur, pour qu’ils puissent saisir sur
Chapitre 7 – Interroger une base de données
Information et gestion – Spécialité communication – 1re STG Nathan
100
l’ordinateur l’ordre SQL mis au point dans un premier temps sur le papier, et vérifier que le
résultat obtenu est bien celui que l’on attend. Il est extrêmement important de privilégier la
phase de réflexion et de vérifier que les élèves ont bien compris la requête, en leur demandant
systématiquement d’écrire sur le papier le résultat attendu ou tout au moins les champs et/ou
calculs que l’on veut afficher. Savoir précisément ce que la requête doit produire, c’est déjà
écrire « plus de la moitié » de la requête, puisque, après le Select, on énumère les champs
et/ou les calculs que l’on attend : on qualifie d’ailleurs le SQL de « langage déclaratif » (on
déclare ce que l’on veut). C’est pourquoi, il faut éviter des jeux d’essai trop volumineux (mais
bien pensés !) et des résultats trop longs à écrire. Peu à peu, les élèves pourront se contenter
de n’indiquer que les champs (les intitulés de colonne) que la requête doit afficher.
Ressources informatiques
Les activités de ce chapitre s’appuient toutes sur une même base de données téléchargeable
sur le site compagnon www.nathan.fr/specialites-stg/. Elle est proposée dans une version
élève sous le nom Chap07_Facturation97_eleve.mdb et dans une version corrigée pour le
professeur sous le nom Chap07_Facturation97_prof.mdb. Elle est au format Access 97 pour
pouvoir être lue avec n’importe quelle version d’Access. Avec des versions plus récentes
(2000, 2002, 2003…), il suffit de les convertir au format le plus récent.
Les bases de données utilisées dans les applications peuvent également être téléchargées. Elles
sont proposées au format Access 97 dans une version élève et une version professeur et intitulées
Chap07_Biblio97_eleve.mdb, Chap07_Biblio97_prof.mdb, Chap07_ClubHippique97_eleve.mdb,
Chap07_ClubHippique97_prof.mdb. Ces trois bases de données contiennent un jeu d’essai
conforme à la version papier. L’enseignant peut bien sûr enrichir, étoffer, modifier ce jeu
d’essai à sa convenance et inventer de nouvelles requêtes.
L’intitulé des requêtes dans les fichiers se rapproche le plus possible de celui des requêtes du
corrigé. Quand l’intitulé est trop long, Access le refuse ; une expression plus courte a donc été
trouvée, mais le sens n’a jamais été perdu et on s’y retrouve facilement.
Corrigés des activités
La base de données Facturation est disponible sur le site compagnon dans une version élève
(Chap07_Facturation97_eleve.mdb) et dans une version corrigée pour le professeur
(Chap07_Facturation97_prof.mdb).
Activité 1 : Une vue d’ensemble de la base
de données « Facturation » (p. 70)
Objectif
Savoir lire le schéma relationnel d’une base de données.
Chapitre 7 – Interroger une base de données
Information et gestion – Spécialité communication – 1re STG Nathan
101
Réponses aux questions
1. Que représente chaque fenêtre ?
Chaque fenêtre représente le schéma (la structure) d’une table. Un ascenseur vertical
apparaît dès que la hauteur de la fenêtre est insuffisante pour voir la totalité des
champs.
2. Que représentent les champs affichés en gras ?
Ils représentent la clé primaire. Parfois, la clé primaire est formée de deux champs (ou
davantage). Chacun d’eux est représenté en gras mais, par définition, il n’y a qu’une clé
primaire.
3. Que représentent les traits entre les tables ?
Ils symbolisent les liens entre les tables qui partent d’une clé étrangère pour pointer
sur une clé primaire.
4. Comment interprétez-vous le chiffre 1 et le symbole mathématique de
l’infini ∞, qui signifie « plusieurs » ?
Sous Access, le symbole ∞ est du côté de la clé étrangère et le chiffre 1 (singulier) du
côté de la clé primaire.
Prenons l’exemple de CLIENTS – VILLES :
5. Pourquoi la fenêtre qui contient le schéma de la base de données
s’appelle « Relations » ?
Elle s’appelle « Relations » parce que son principal intérêt est de montrer les liens, les
relations entre les tables.
Pour une ville, il existe
plusieurs (∞) clients.
Pour un client, il n’existe
qu’une (1) ville.
Clé étrangère
qui référence
la clé primaire
de VILLES.
Chapitre 7 – Interroger une base de données
Information et gestion – Spécialité communication – 1re STG Nathan
102
6. Chacun des quatre traitements ci-après évoque une opération sur la
table CLIENTS. Pourriez-vous lui donner un nom ?
a) Affichage de la liste des clients
b) Enregistrement d’un client
c) Modification de l’adresse d’un client
d) Suppression d’un client
a) Affichage de la liste des clients : Lecture ou Consultation ou Interrogation.
b) Enregistrement d’un client : Écriture ou Enregistrement.
c) Modification de l’adresse d’un client : Modification.
d) Suppression d’un client : Suppression.
Activité 2 : Quelques opérations sur la base
de données « Facturation » (p. 72)
Objectif
Comprendre des questions (des requêtes) en donnant « à la main » leur résultat d’après un jeu
d’essai.
Réponses aux questions
1. Donnez, sous la forme d’une table que vous nommerez « R01 », la liste
des clients avec :
– leur numéro (Code de la catégorie et N° client dans la catégorie) ;
– le Nom de l’entreprise ;
– le Montant des achats.
Code
de la
catégorie
N° client
dans la
catégorie
Nom
de l’entreprise
Montant
des achats
BOU
001
Anis et Miel
3 584,00 €
BOU
002
Les Moulins de Pvce
2 458,00 €
EPI
001
Bataille
18 245,00 €
HYP
001
Auchan
105 147,00 €
HYP
002
Casino
250 475,00 €
HYP
003
Leclerc
85 560,00 €
PAT
001
Les Moulins de Pvce
5 780,00 €
SUP
001
Intermarché
1 854,00 €
SUP
002
Casino
15 784,00 €
2. Par rapport à la table CLIENTS, cette opération concerne-t-elle les
lignes ou les colonnes ?
Cette opération ne concerne que les colonnes. On affiche les trois premières colonnes et
la dernière.
1 / 36 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans l'interface ou les textes ? Ou savez-vous comment améliorer l'interface utilisateur de StudyLib ? N'hésitez pas à envoyer vos suggestions. C'est très important pour nous!