Page 170 - IT2
P. 170
Table Ville
Colonne Type Signification
code_ville Entier Code de la ville
nom_ville alphabétique Nom de la ville
Table Role
Colonne Type Signification
nom_role alphabétique Nom du rôle
La compagnie assure le transport de passagers sur plusieurs lignes nationales.
Chaque ligne est définie par un code, une distance kilométrique, une ville de départ
et une ville d’arrivée.
Le calendrier des voyages comprend les horaires des transports assurés pour tous
les jours de la semaine. La colonne jour_voyage contient le numéro d’ordre du jour
dans la semaine (1 pour lundi et 7 pour dimanche).
La base de données permet d’enregistrer pour chaque voyage, les dates et
compteurs kilométriques de départ et d’arrivée, le nombre de passagers transportés,
l’autocar utilisé et son chauffeur.
Chaque employé appartient à un rôle qui lui permet d’accéder à certaines fonctions
des applications à développer.
Travail à faire : enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les
requêtes SQL qui répondent aux questions suivantes (1 à 7) :
1) Créer la base de données et remplir les tables par un jeu d’essai. Le code
voyage est un numéro automatique. (4 pts)
2) Ajouter les contraintes suivantes : (2 pts)
a. Les villes de départ et d’arrivée doivent être différentes pour une même
ligne.
b. La distance (de la table ligne) doit être comprise entre 50 et 500.
3) Ajouter à la table « Voyage » une colonne calculée DUREE de type
numérique. (2 pts)
4) Ajouter un déclencheur (trigger) lié à la mise à jour de la table « Voyage » et
qui vérifie que le compteur_arrivee est supérieur au compteur_depart. (2 pts)
5) Créer la fonction qui renvoie les noms des villes de départ et d’arrivée,
concaténés, d’une ligne dont le code est passé en paramètre. (2 pts)
6) Créer une fonction qui renvoie une table de tous les chauffeurs ayant assuré
des voyages sur une ligne dont le code est transmis en paramètre. (4 pts)
V1-3 3/6

