
-1- 
Projet de Base de données  
 
Objectif : 
 
L'objectif est de se familiariser avec des aspects importants pour le développement d'applications 
utilisant des bases de données. 
Dans une première étape, vous devez construire un MCD permettant de modéliser une base de 
location de voitures. Dans une deuxième étape, vous réaliserez le MLD correspondant; puis 
implanterez le MPD sous Oracle Express. Enfin, vous insèrerez quelques données, 
judicieusement choisies par rapport aux questions Q1 à Q5 dont vous donnerez le texte SQL 
dans la partie 3. Dans la partie 4, vous testerez l'appel d'une base de données depuis JAVA. Pour 
cela, un exemple simple, permettant de débuter est fourni. Sur la base de cet exemple, il vous est 
demandé de réaliser une application simpliste. Enfin, vous tenterez de réaliser une attaque au 
processus d'identification développé dans la partie 4, montrant qu'une mauvaise programmation peut 
générer des failles importantes. 
 
Docs et programmes sur http://www-smis.inria.fr/~bouganim/ensta/projet (dès ce soir) 
 
Installation :  
o Si vous avez des outils pour développer en JAVA, vous pouvez les utiliser, sinon, vous pouvez 
utiliser Eclipse. Sur un PC windows, vous pouvez télécharger Eclipse (j2re-1_4_2_13-windows-
i586-p.exe) 
o Copiez les exemples fournis – compilez les et testez les (après avoir notamment vérifié / 
modifié les paramètres de connexion) 
 
Partie 1 – Réalisation du MCD 
 
Il faudra créer le MCD en se basant d'une part sur le (court) texte décrivant le contexte associé 
ainsi que sur les questions Q1 à Q5 indiquées et qui seront utilisées dans la partie 3. Ainsi, le 
MCD créé devra permettre de stocker les informations nécessaires pour pouvoir répondre à ces 
questions et, si possible, pas plus. La création d'un MCD plus complexe est en général source 
d'erreurs. Dans tous les cas, vous aurez  au plus 7 entités ou associations au total. Il n'y a pas 
une seule bonne solution, tout comme, nous l'avons vu en cours, il n'y a pas une seule bonne 
modélisation. La modélisation sera considérée correcte à partir du moment où les choix sont 
justifiés et pertinents. Aussi, en cas de doute ou d'imprécision dans le contexte, vous pourrez 
apportez toutes sortes de précisions, en les justifiant, dans le texte accompagnant le MCD.  
 
 
Location de voiture 
Une agence de location de voiture souhaite gérer son parc locatif. Chaque véhicule est d'une 
certaine catégorie (A, B, C, D, E) indiquant le tarif journalier, etc… Les clients louent des 
voitures pour une certaine durée (on ignorera les forfaits, etc.). 
Q1 : Liste des catégories triées par prix à la journée 
Q2 : Liste des locations de véhicule de catégorie E triés par date 
Q3 : Liste des véhicules jamais loués 
Q4 : Nombre de location par catégorie 
Q5 : Vérifiez qu'un véhicule donné n'est pas loué deux fois (ou plus) à la même période