Évaluation BDD

Eval 07
Consignes
  • Il s’agit d’une épreuve papier.
  • La qualité de la rédaction sera prise en compte.
  • Une attention particulière sera portée sur la présentation des requêtes SQL.

Exercice 1 (6,5 points)

  1. Que signifie le sigle SGBD?
  2. Citer et détailler les trois contraintes d’intégrité que les données d’un modèle relationnel doivent vérifier.
  3. Expliquer comment ces contraintes sont mises en place dans le SGBD.

Exercice 2 (13,5 points)

Un concessionnaire désire numériser son activité. Il vend, en France, des voitures de toutes marques à des clients. Une voiture possède une marque, une couleur, un modèle, un type de carburant, un kilométrage. De plus, depuis 2009, chaque véhicule possède un numéro d’immatriculation unique qu’il garde tout au long de son existence.

Le schéma relationnel des véhicules s’écrit:

Véhicules(marque, modèle, couleur, carburant, kilométrage, immatriculation)

Il décide d’utiliser le couple (marque, modèle) pour identifier chaque véhicule.

  1. Expliquer pourquoi ce choix n’est pas judicieux.
  2. Préciser un domaine de définition pour chaque attribut.
marquemodèlecouleurcarburantkilométrageimmatriculation
RenaultTwingorougeessence12000AA-123-BB
RenaultScénicrougeessence13400AA-342-DC
Peugeot1007bleudiesel124030EF-298-DE
  1. Écrire une requête qui ajoute dans la table une Mercedes modèle classe A de couleur noire, diesel. Elle a déjà roulé 37000km. Son immatriculation est SZ-190-HL.
  2. Écrire une requête qui modifie le kilométrage du véhicule dont l’immatriculation est AA-342-DC: ce véhicule a roulé 234500km.

On lui conseille de modifier la construction de sa base de données et on lui propose le schéma suivant:

  • Véhicules(id_marque*, modèle, couleur, carburant, kilométrage, immatriculation)
  • Marques(id, marque)
  1. Que représentent l’étoile à côté de l’attribut id_marque?
  2. Qu’apporte cette amélioration?
  3. Réécrire les deux tables et leurs contenus sous forme de deux tables.
  4. Pourrait-on imaginer d’autres améliorations?
  5. Écrire une requête qui sélectionne les modèles des voitures rouge.
  6. Écrire une requête qui sélectionne les modèles et immatriculations des voitures qui ont roulé moins de 100000km, triées par ordre croissant de kilométrage.
  7. Écrire une requête qui sélectionne les modèles des voitures de la marque Renault.