Gestion de bus

[30 min]

Une société de gestion d'autobus urbains dispose de la base de données suivante pour représenter ses conducteurs, ses bus et ses lignes de bus :

Conducteur (#matricule:varchar(10), nom:varchar, prénom:varchar) 
Ligne (#num:numeric(2), km:numeric(4)) 
Bus (#immat:varchar(10), type:{Soufflets|Normaux|Réduits}, kilométrage:numeric(7), matricule=>Conducteur)  
TrajetParJour (#ligne=>Ligne, #immat=>Bus, nombre_de_trajets:numeric(2)) 
Station (#num:numeric, nom:varchar, adresse:varchar)
Arrêt (#ligne:=>Ligne, #station=>Station, rang:numeric) 
  • Un conducteur est identifié par son matricule.

  • Une ligne de bus est représentée par un numéro et elle a une longueur exprimée en kilomètres.

  • Un bus est conduit par un seul conducteur référencé par son matricule. Le type du bus peut comprendre les valeurs Soufflets, Normaux, Réduits, le kilométrage correspond au nombre de kilomètres au compteur du bus.

  • Trajet permet de connaître le nombre de trajets effectués par un bus sur une ligne donnée pendant une journée.

  • Station contient la liste des stations desservies par la société.

  • Arrêt fait le lien entre les lignes et les stations qu'elle dessert. Le rang correspond au numéro de l'arrêt sur la ligne (le rang 1 correspond au départ de la ligne, l'arrivée est la station qui a le rang le plus élevé sur cette ligne).

Donnez en algèbre relationnelle et en SQL les requêtes permettant d'obtenir les informations suivantes.

Nom et prénom du conducteur du bus immatriculé "5657 MA 49".

Immatriculation et type des bus qui partent de la station "Gare SNCF".

Numéros des lignes desservant à la fois les stations "Royallieu" et "Gare SNCF".

Numéros des lignes qui ne sont pas desservies par des bus à soufflets.

AccueilDevoirs > Exercice : Gestion de bus< PrécédentSuivant >