TP SQL
TP SQL
José Gil
EXPLOITATION
DES DONNÉES
TRAVAUX PRATIQUES
Retrouvez la liste de nos formations sur [Link]
Pour plus d’informations, appelez le 05 49 49 94 94
Du lundi au vendredi, 8 h 30-18 h.
Coût d’une communication ordinaire.
*82943TPPA0013* [Link]
Sommaire
Conseils généraux 3
TP 1 : Le Tour de France 2011 5
TP 2 : Les autres épreuves cyclistes internationales en 2011 15
TP 3 : L’historique des coureurs et des directeurs d’équipes 21
TP 4 : Cas de synthèse 25
Les cours du CNED sont strictement réservés à l’usage privé de leurs destinataires et ne sont pas destinés à une utilisation collective.
Les personnes qui s’en serviraient pour d’autres usages, qui en feraient une reproduction intégrale ou partielle, une traduction sans
le consentement du CNED, s’exposeraient à des poursuites judiciaires et aux sanctions pénales prévues par le Code de la propriété
intellectuelle. Les reproductions par reprographie de livres et de périodiques protégés contenues dans cet ouvrage sont effectuées
par le CNED avec l’autorisation du Centre français d’exploitation du droit de copie (20, rue des Grands Augustins, 75006 Paris).
© CNED 2013
Conseils généraux
Présentation générale du module
Ce module intervient au premier semestre de la première année. Le référentiel lui
réserve 4 heures de cours/TP par semaine sur 15 semaines, ce qui représente un volume
total de 60 heures. Il faut cependant compter beaucoup plus d’heures de travail person-
nel pour les exercices. Ce module concerne les 2 options de la formation (SLAM et SISR).
Ce module porte sur un langage extrêmement important dans le monde des bases de
données. Il existe de nombreux logiciels de gestion de bases de données. Tous sont dif-
férents soit par leur mode de fonctionnement, soit par leurs origines ou philosophies
respectives. Ils ont toutefois une chose en commun : ils utilisent le SQL au sein de leur
système pour interagir avec les bases de données. Une fois que vous connaîtrez le SQL,
vous pourrez manipuler des données de quasiment n’importe quelle plate-forme logi-
cielle de gestion de bases de données.
Organisation des TP
Il y a un total de 4 TP. Chaque TP est à réaliser à la fin d’une séquence bien précise, c’est-
à-dire après avoir étudié le cours de cette séquence, fait les exercices, s’être autocorrigé
et avoir relu la synthèse :
• TP 1 : à la fin de la séquence 2 ;
• TP 2 : à la fin de la séquence 3 ;
• TP 3 : à la fin de la séquence 4 ;
• TP 4 : à la fin de la séquence 5.
Beaucoup de requêtes sont à réaliser, en particulier dans le TP 1. La plupart peuvent Conseils généraux
être traitées indépendamment les unes des autres, donc, si à un moment, vous bloquez,
passez à la suivante, vous y reviendrez plus tard. L’important est d’y passer du temps Page 3
car, en SQL, la recherche est extrêmement formatrice. Si, après avoir consacré un temps
important à une requête, vous n’y arrivez toujours pas, vous disposez des fichiers SQL de
correction qui ont permis d’effectuer les travaux demandés (sauf pour le TP 4 où c’est à
vous de tout faire). Mais ne vous y référez qu’en cas de "désespoir". Privilégiez égale-
ment au maximum l’utilisation de pgAdmin en SQL, et ne passez à FlySpeed SQL Query
en graphique qu’en cas de "désespoir".
Outils
Dans ce cours, vous allez travailler avec les outils suivants :
• PostgreSQL : SGBDR gratuit et téléchargeable sur le site officiel ([Link]
[Link]/accueil). Ce cours a utilisé la version 8.4 mais vous pouvez a priori récupérer
la version la plus récente. Ce SGBDR est l’un des plus connus et des plus appréciés
dans le monde gratuit : il est très puissant et multiplate-forme.
• FlySpeed SQL Query : logiciel gratuit permettant l’interrogation de bases de don-
nées. Il est téléchargeable sur le site de l’éditeur Active Database Software (http://
[Link]/[Link]). Ce logiciel présente l’avantage
de permettre la construction de requêtes graphiques tout en générant du SQL
compatible SQL-92.
Bon courage à tous !
8 2943 TP PA 00
TP 1
Le Tour de France 2011
Ce premier TP porte exclusivement sur de l’extraction de données. Cette partie du lan-
gage est, de loin, la plus utilisée lorsque l’on travaille avec un SGBDR.
X Prérequis
Avoir compris le cours de la séquence 2, avoir fait tous les exercices et s’être
autocorrigé.
X Contenu
1. Contexte d’étude .............................................................................................. 6
2. Requêtes simples .............................................................................................. 8
3. Requêtes intermédiaires ................................................................................ 10 TP 1
Page 5
8 2943 TP PA 00
1. Contexte d’étude
Le Tour de France est une compétition cycliste par étapes créée en 1903 qui se déroule
chaque année en France, au mois de juillet. Cette épreuve de plus de 3 000 km est consi-
dérée comme la plus prestigieuse épreuve cycliste du monde.
Pour ce TP, vous allez imaginer que vous assistez un journaliste sportif qui prépare une
émission sur le Tour de France. Votre prédécesseur a préparé des fiches avec les réponses
à des questions précises sur le Tour, mais il a omis de recopier les requêtes SQL qui lui ont
permis d’obtenir ces résultats.
Vous êtes donc chargé de trouver les requêtes SQL qui ont permis d’obtenir certains
résultats. Pour cela, vous disposez d’une base de données qu’a conçue votre prédéces-
seur qui contient toutes les données recueillies pendant le Tour de France 2011 qui s’est
TP 1 déroulé du 2 au 24 juillet 2011. Vous disposez également des notes qu’il a laissées qui
Le Tour de France
contiennent :
2011 • Un schéma conceptuel des données (respectant le formalisme du MCD de la
méthode d’analyse Merise) ;
Page 6 • Un diagramme de classes (respectant le formalisme issu du langage UML) ;
• Un schéma relationnel ;
• Quelques requêtes.
8 2943 TP PA 00
Diagramme de classes :
EQUIPE
idEquipe PAYS
1 * 1
nom idPays
directeur nom
url
*
1
COUREUR *
dossard
nom ETAPE
prenom * *
idEtape
dateDeNaissance
villeDepart
RESULTATETAPE villeArrivee
classement distance
temps
abandon
8 2943 TP PA 00
Importation des données :
• Commencez par créer une base de données "tourdefrance" en vous inspirant de ce
que vous avez fait à la séquence 1 (page 12).
• Importez ensuite le contenu de la base de données (structure et données) en utili-
sant le script "TP1_BDD.sql" en vous inspirant de ce que vous avez fait dans l’auto-
correction de la séquence 1 (page 137).
2. Requêtes simples
2.1. Quel est le parcours du Tour de France 2011 ?
2.2. Quelles sont les villes qui, dans une même étape, sont "ville de départ" et "ville d’ar-
rivée" ?
TP 1
Villes à la fois départ et arrivée
Le Tour de France Les Essarts
2011
Grenoble
Page 8
2.3. Quelle est la distance totale du Tour de France 2011 ?
Distance totale
3 430,0
Prénom Nom
Alberto CONTADOR
8 2943 TP PA 00
2.7. Combien d’équipes participent au Tour 2011 ?
Nom URL
AG2R LA MONDIALE [Link]
TP 1
2.11. Combien y a-t-il de nationalités représentées parmi les coureurs ?
Le Tour de France
Nombre de nationalités représentées
2011
30
Page 9
2.12. Qui sont les vainqueurs d’étapes (triés par noms) ?
Prénom Nom
Mark CAVENDISH
Alberto CONTADOR
Rui Alberto COSTA
… (Il y a 15 lignes au total)
8 2943 TP PA 00
3. Requêtes intermédiaires
3.1. Quelles sont les villes qui sont à la fois "villes de départ" et "villes d’arrivée" ?
3.3. Combien y a-t-il de coureurs par pays représenté (affichage des pays ayant le plus
grand nombre de coureurs en premier et, en cas d’égalité, c’est l’ordre alphabétique
sur le nom de pays qui prime) ?
Page 10 3.4. Quels sont les coureurs qui ont remporté plusieurs étapes ?
Prénom Nom
Edvald Boasson HAGEN
Thor HUSHOVD
Mark CAVENDISH
8 2943 TP PA 00
3.6. Quelles sont les sommes acquises par les victoires d’étapes sachant que chaque vic-
toire rapporte au coureur 8 000 € (affichage des plus victorieux en premier, et, en cas
d’égalité, c’est l’ordre alphabétique sur le nom du coureur qui prime ) ?
3.8. Quel est le nombre d’abandons par étape (en donnant tous les numéros d’étapes) ?
4 1 TP 1
3.9. Quelle est la date de naissance du plus jeune Français terminant le Tour 2011 ?
Page 11
Date de naissance du plus jeune Français arrivant
11/09/1989
3.10. Quel est le directeur d’équipe du coureur qui a remporté l’arrivée sur les Champs-
Élysées (étape n° 21) ?
Allan PEIPER
3.11. Quel est le classement par équipe de l’étape n° 2 (sachant que c’était un contre-
la-montre par équipe, chaque coureur d’une même équipe a exactement le même
temps. L’affichage se fera par meilleurs temps, et par noms d’équipe) ?
Équipe Temps
8 2943 TP PA 00
4. Requêtes complexes
4.1. Quel est le classement à l’arrivée de l’étape la plus longue ?
3 Thor HUSHOVD
4 Romain FEILLU
Rappelez-vous que la requête 3.7 vous permettait de rechercher l’étape la plus longue.
4.2. Quelle distance les coureurs avaient-ils déjà parcourue avant d’attaquer l’étape la
plus longue ?
749,5
TP 1
Le Tour de France Comme pour la requête précédente, rappelez-vous que la requête 3.7 vous permettait de
2011 rechercher l’étape la plus longue.
Page 12
9 8
4.4. Quel est le pays ayant le plus de coureurs représentés au départ du Tour ?
France 45
8 2943 TP PA 00
4.5. Quel est l’écart entre le premier et le dernier du Tour de France 2011 ?
[Link]
4.6. Quel est le coureur qui a le plus grand nombre de victoires d’étapes ?
Mark CAVENDISH 5
Vous disposez de la requête ci-après qui permet de trouver l’équipe qui a le plus grand
nombre de victoires d’étapes :
HTC - HIGHROA 6
4.7. Quel est le coureur qui a remporté le maillot blanc1 du Tour de France 2011 avec le
temps réalisé ?
Vous disposez, pour vous aider, de la requête, ci-après qui permet de trouver le coureur
qui a remporté le maillot jaune12 du Tour de France 2011 avec le temps réalisé :
1. Le maillot blanc, également appelé maillot du "meilleur jeune", est décerné au coureur ayant fait le
meilleur temps sur l’intégralité du Tour et dont la naissance a eu lieu après le 1er janvier 1986.
2. Le maillot jaune est décerné au coureur ayant fait le meilleur temps sur l’intégralité du Tour.
8 2943 TP PA 00
SELECT prenom, nom, SUM(temps) AS "Temps total"
FROM resultatEtape JOIN coureur ON idCoureur = dossard
GROUP BY prenom, nom
HAVING SUM(temps) = ( SELECT MIN(sumTP)
FROM ( SELECT idCoureur, SUM(temps) AS sumTP
FROM resultatEtape JOIN coureur
ON idCoureur = dossard
WHERE idCoureur
NOT IN ( SELECT idCoureur
FROM resultatEtape
WHERE abandon = true
)
GROUP BY idCoureur
) AS req
)
4.8. Quel est le classement de l’étape n° 2 (contre la montre par équipe) avec les écarts de
chaque équipe par rapport à la première ?
Rappelez-vous que la requête 3.11 vous permettait de rechercher le classement par équipe
de l’étape n° 2 et que la requête 4.5 vous permettait de trouver un écart.
4.9. Quel est le classement général à l’arrivée du Tour de France 2011 avec les écarts de
chaque coureur par rapport au premier ?
8 2943 TP PA 00
TP 2
Les autres épreuves cyclistes
internationales en 2011
Ce deuxième TP porte exclusivement sur la manipulation de données. Dans cette par-
tie du langage, nous allons essentiellement voir la manipulation simultanée de grandes
quantités de données. Les autres types de manipulations (insertions, modifications indi-
viduelles…) ayant été largement vues au cours des exercices.
X Prérequis
Avoir compris le cours de la séquence 3, avoir fait tous les exercices, s’être auto-
corrigé et avoir fait le TP 1.
Les autres
X Contenu épreuves cyclistes
internationales
en 2011
1. Contexte d’étude (évolution) ........................................................................ 16
2. Insertion de données...................................................................................... 18 Page 15
3. Modification de données ............................................................................... 20
8 2943 TP PA 00
1. Contexte d’étude (évolution)
L’utilisation de la base de données a été jugée très satisfaisante et il a donc été décidé
d’aller plus loin, en y mémorisant toutes les informations concernant les autres épreuves
cyclistes internationales comme le "Paris-Roubaix1" ou le "Paris-Nice2".
Pour que cela soit possible, le schéma de la base de données a évolué et certaines modi-
fications ont été apportées.
1,n 0,n
ETAPE EPREUVE
ResultatEtape
1,n (1,1) Faire partie 0,n
classement idEtape idEpreuve
temps villeDepart nom
abandon villeArrivee
Distance
1. "Paris-Roubaix" est une course d’une "étape" de plus de 250 km réputée pour être extrêmement difficile
car comprenant plus de 50 km d’anciennes routes pavées.
2. "Paris-Nice", surnommé la "Course au Soleil", est une course de 8 étapes reliant Paris à Nice.
3. L’Union Cycliste Internationale (UCI) est la fédération internationale de cyclisme reconnue par le Comité
International Olympique (CIO). La mission de l’UCI consiste à développer et promouvoir le cyclisme, en
étroite collaboration avec les fédérations nationales (source : [Link]).
8 2943 TP PA 00
Diagramme de classes (évolution) :
COUREUR PAYS EQUIPE
* 1 1 *
codeUCI idPays idEquipe
nom nom nom
prenom directeur
dateDeNaissance 1..* 1 url
1..*
PARTICIPER
1..* dossard
RESULTATETAPE ETAPE
classement idEtape
temps villeDepart *
abandon villeArrivee EPREUVE
distance * 1
idEpreuve
nom
8 2943 TP PA 00
Importation des données :
• Importez le contenu des évolutions de la base de données (structure et données)
dans la base "tourdefrance" en utilisant le script "TP2_BDD.sql" en vous inspirant
de ce que vous avez fait dans le TP précédent.
À partir de maintenant, dans pgAdmin, on utilisera uniquement l’outil "Query" qui nous
permet de lancer des instructions SQL :
2. Insertion de données
Maintenant que la base nous permet d’accueillir d’autres épreuves, nous allons insérer
tous les résultats du Paris-Nice. Pour cela, on nous fournit les tables "temporaires" sui-
vantes : "coureur_pnc", qui contient la liste de tous les coureurs engagés dans le Paris-
Nice ; "etape_pnc", qui contient toutes les étapes du Paris-Nice ; "resultatetape_pnc",
qui contient tous les résultats du Paris-Nice ; et "participer_pnc", qui contient toutes les
correspondances de dossards.
TP 2 2.1. L’équipe suivante n’est pas dans notre base (elle n’a pas participé au Tour de France).
Ajoutez-la pour respecter la règle "Un coureur fait partie d’une équipe" (sans la-
Les autres quelle l’ajout d’un coureur de cette équipe est impossible) :
épreuves cyclistes
internationales
en 2011
id Nom Directeur URL Nationalité
8 2943 TP PA 00
2.3. La table temporaire "coureur_pnc" contient les coureurs engagés dans le Paris-Nice.
Veillez à ce qu’ils figurent bien tous dans notre base de données :
ARG19830418 124 TP 2
2.5. La table temporaire "resultatetape" contient tous les résultats. Ajoutez-les à notre
base de données :
8 2943 TP PA 00
3. Modification de données
Quelques erreurs se sont glissées dans les données que l’on nous a fournies via les tables
temporaires ("…_pnc"). Il faut procéder à certaines modifications :
3.1. On ne va plus se servir des tables temporaires, supprimez donc leurs contenus.
3.2. Le coureur Luis León SANCHEZ (ESP19831124) ayant eu une crevaison dans les 3 der-
niers kilomètres4 se voit attribuer le même temps que le groupe auquel il apparte-
nait. Son classement ne change pas (168e) mais son temps doit donc être corrigé pour
la valeur "[Link]" :
Temps
[Link]
3.3. Le coureur David MONCOUTIÉ (FRA19750430) n’est pas arrivé dernier de l’étape 2
puisqu’il a abandonné en cours d’étape (suite à une blessure de la veille) :
TP 2
2 FRA19750430 174 [Link] FALSE
4. Depuis 2005, si un incident se produit dans les trois derniers kilomètres, les coureurs impliqués sont crédi-
tés du temps du groupe auquel ils appartenaient.
8 2943 TP PA 00
TP 3
L’historique des coureurs
et des directeurs d’équipes
Ce troisième TP porte exclusivement sur la description de données et la modification de
structures. Dans cette partie du langage, nous allons essentiellement voir la restructura-
tion et l’adaptation d’une base de données.
X Prérequis
Avoir compris le cours de la séquence 4, avoir fait tous les exercices, s’être auto-
corrigé et avoir fait les TP précédents.
TP 3
X Contenu
1. Contexte d’étude (évolution) ........................................................................ 22 L’historique
des coureurs
2. Restructuration de la base de données ........................................................ 23 et des directeurs
d’équipes
3. Création de vues ............................................................................................. 24
Page 21
8 2943 TP PA 00
1. Contexte d’étude (évolution)
On souhaite à présent pouvoir mémoriser l’historique des coureurs et des directeurs
d’équipes afin de pouvoir avoir accès à la carrière d’un coureur (équipes d’appartenance,
directeurs à ces moments-là…).
Pour que cela soit possible, le schéma de la base de données a évolué et certaines modi-
fications ont été apportées.
COUREUR
TP 3 codeUCI
nom
L’historique
prenom
des coureurs
et des directeurs dateDeNaissance
d’équipes
8 2943 TP PA 00
Nouvelles règles de gestion présentes dans les deux extraits
de schémas ci-dessus :
• Dans une saison, un coureur ne signe un contrat qu’avec une seule équipe.
• Dans une saison, une équipe a un seul directeur.
L’historique
des coureurs
et des directeurs
2. Restructuration de la base de données d’équipes
SAISON
idsaison integrer
2.3. Insérez les données concernant les contrats de coureurs (c’est-à-dire la saison en
cours "2011", le coureur et l’équipe à laquelle il appartient actuellement) dont vous
disposez dans la table "coureur".
2.4. Supprimez le champ "idEquipe" de la table coureur afin de respecter la dernière évo-
lution de notre base "Un coureur appartient à une équipe pour une saison".
2.5. Créez la table "contratdirecteur" en vous appuyant sur l’extrait du schéma relation-
nel ci-dessus.
2.6. Insérez les données concernant les contrats de directeurs (c’est-à-dire la saison en
cours et l’équipe à laquelle il appartient actuellement) dont vous disposez dans la
table "equipe".
2.7. Supprimez le champ "directeur" de la table equipe afin de respecter la dernière évo-
lution de notre base "Un directeur est nommé dans une équipe pour une saison".
8 2943 TP PA 00
3. Création de vues
3.1. Créez la vue "vue_abandonsPNC" avec les abandons du "Paris-Nice"
3.2. Créez la vue "vue_classementParEtapePNC" qui permet d’avoir le classement par
étapes du "Paris-Nice" (avec le numéro d’étape, le classement, le code UCI, le pré-
nom, le nom et le temps (le résultat devra, bien entendu, être trié par étape et par
classement).
Par exemple, pour obtenir le classement de l’étape 8, on devra pouvoir utiliser la
requête suivante :
SELECT classement AS "Classement étape 8",
prenom, nom, temps
FROM vue_classementParEtapePNC
WHERE idEtape = 8
3.3. Créez la vue "vue_classementParEtapePNCSansAbandons" qui permet d’avoir le
classement par étape du Paris-Nice, en retirant des classements les coureurs qui ont
abandonné durant l’épreuve.
Rappelez-vous que vous disposez à présent des 2 vues créées aux points précédents. Pour
les exercices suivants, pensez-y également. Chaque vue créée est réutilisable.
TP 3
3.4. Créez la vue "vue_classementGeneralPNC" avec le classement général du Paris-Nice
L’historique (c’est-à-dire le classement à l’arrivée de la dernière étape avec le cumul de tous les
des coureurs temps d’étapes) afin d’obtenir un résultat semblable au résultat suivant :
et des directeurs
d’équipes
Prénom Nom Temps
8 2943 TP PA 00
TP 4
Cas de synthèse
Ce dernier TP porte sur tout ce que l’on a vu jusqu’à présent.
X Prérequis
Avoir compris le cours de la séquence 5, avoir fait tous les exercices, s’être auto-
corrigé et avoir fait les TP précédents.
X Contenu
1. Contexte de travail ......................................................................................... 26
2. Création de la base de données .................................................................... 28
3. Création de la structure de la base de données ........................................... 28
4. Insertion des données .................................................................................... 28
TP 4
5. Interroger la base de données....................................................................... 28
Cas de synthèse
6. Mettre à jour la base de données ................................................................. 31
7. Modification de la structure de la base de données.................................... 31 Page 25
8. Contrôle des données .................................................................................... 31
8 2943 TP PA 00
1. Contexte de travail
Auto-School est une auto-école récemment installée à Grenoble, elle propose des for-
faits incluant un certain nombre de leçons de conduite en fonction du forfait choisi,
des séances de révision du code et une inscription au permis. Auto-School emploie 5
moniteurs et dispose de 8 véhicules. Chaque leçon dure une ou deux heures ; par souci
pédagogique, un élève ne peut suivre au maximum qu'une seule leçon par jour.
date credit
id nom prenom adresse ville CP
Inscription Horaire1
… … … … … … … …
TP 4
Cas de synthèse
LEÇON date eleve heure nbH2 faite auto VEHICULE
8 2943 TP PA 00
Schéma relationnel de la base de données :
CLIENT (id, nom, dateInscription, prenom, adresse, ville, CP,
creditHoraire)
id : Clé primaire
LECON (date, eleve, heure, nbH, faite, auto)
date, eleve : Clé primaire
eleve : Clé étrangère en référence à id de client
auto : Clé étrangère en référence à immat de vehicule
VEHICULE (immat, modele, couleur)
immat : Clé primaire
CLIENT
id numeric 4 0
dateInscription date
VEHICULE Page 27
immat character varying
LECON
date date
eleve numeric 4 0
nbH numeric 1 0
faite boolean
8 2943 TP PA 00
2. Création de la base de données
Créez une nouvelle base de données avec comme nom "autoschool".
Rappel : lorsque vous créez une base, une table ou même un champ dans PostgreSQL
avec un outil comme pgAdmin, veillez à toujours saisir les libellés en minuscules. C’est
capital pour que vos futures requêtes soient insensibles à la casse (indifférence majus-
cules/minuscules).
Cas de synthèse
Page 28
4. Insertion des données
Insérez maintenant les données visibles dans les extraits de la page 27 dans les tables
correspondantes : "client", "vehicule" et "lecon".
Attention : il faut respecter un ordre d’insertion pour pouvoir respecter nos contraintes
d’intégrité référentielle. Par exemple, on ne peut pas créer une "lecon" si le véhicule utilisé
n’est pas encore présent dans la table "vehicule" car la clé étrangère "vehicule" de "lecon"
fait référence à "immat" de "vehicule".
8 2943 TP PA 00
• Liste des élèves par ordre alphabétique :
date credit
id nom prenom adresse ville cp
Inscription Horaire
Nombre d’élèves
date credit
id nom prenom adresse ville cp
Inscription Horaire
immat modele
BA-156-GA 207
FF-462-GH 207
BX-38-FG 207
JH-131-KN 207
AE-84-CH Clio
BE-253-LN Clio
8 2943 TP PA 00
• Nombre de véhicules par modèle en affichant le modèle le plus nombreux en pre-
mier :
modele Nb voitures
207 4
Clio 2
308 1
• Noms et adresses des élèves qui ont eu une leçon entre le 13/07/2010 et le
27/07/2010 :
• Liste des voitures (immatriculation et modèle) qui ont été utilisées plus de 2 fois :
TP 4
Nb utilisation immat modele
Cas de synthèse
3 BA-156-GA 207
Page 30
• Villes des élèves qui ont une leçon prévue avec une Clio :
ville
Grenoble
• Dates et heures des prochaines leçons qui concernent des élèves habitant Eybens,
Sassenage, Grenoble ou Seyssins :
Par défaut, dans pgAdmin, les dates sont affichées avec la notation japonaise (ISO
8601 : aaaa-mm-jj). N’en tenez pas compte, ce n’est pas important pour la suite.
8 2943 TP PA 00
6. Mettre à jour la base de données
On va maintenant procéder à des mises à jour des données de la base comme le ferait
une application de gestion installée à l’auto-école.
• La leçon du 12/08/2010 par l’élève "Devolder" a été faite.
• La leçon du 13/08/2010 par l’élève n° 5 est annulée.
MONITEUR
idMon numeric 4 0
Cas de synthèse
• Une leçon est assurée par un moniteur, il faut donc modifier la structure de la table
"lecon" pour pouvoir prendre en compte cette nouvelle règle.
Page 31
• On veut également pouvoir mémoriser l’adresse électronique des élèves, on a donc
besoin d’ajouter un champ à la table "client".
8 2943 TP PA 00