Iris 1 BTS informatique et Réseaux
TP C++Builder Accès à une base de données MySQL
Objectifs: - S'initier à la POO: Programmation Orientée Objet
- Utiliser une librairie GNU GPL(Free Software Foundation)
-Réaliser une classe C++ ou implémenter ses méthodes
-Procéder aux tests unitaires des méthodes de cette classe
-Utiliser les outils de l'EDI (C++Builder) pour la mise au point.
But du TP: Interroger une BDD via un serveur MySql à partir d'une application développée avec C++Builder en implémentant les
méthodes de la classe myBase.
Différents outils permettent l'accès aux bases de données; dans cette séance nous utiliserons la librairie libmysql et nous nous
contenterons d'afficher les résultats des requêtes dans une ListBox ou dans une boîte de message( ShowMessage).
Travail demandé:
1) Tests: TestMySql
1.1) Copier dans c:\temp le dossier \\iris-server\public\iris1\flament\bdd
1.2) Ouvrir le projet testmysql et lancer l'exécution afin de vérifier la connexion à votre base de données(ex: c_cottrell).
1.3) Examiner les appels des fonctions de la librairie libmysql
2) Constructeur, Destructeur
2.1) Avec une autre instance de C++Builder, ouvrir le projet mysql_afr et ses 2 unités
2.2) Justifier la déclaration de sql dans unit1.h après avoir étudié les méthodes de l'unit1.cpp.
2.3) Placer un point d'arrêt dans le constructeur de Tform1 sur la ligne sql= et dans la méthode Tform1::FormDestroy;
Lancer l'exécution et suivre pas à pas avec la touche F7;
Quand la fiche apparaît à l'écran, fermer la fiche et poursuivre avec F7;
Indiquer la méthode appelée lors de l'instanciation de l'objet sql (new) et celle appelée lors de la destruction (delete).
3) Implémentation et test unitaire de la méthode myBase::Connecte
Après avoir étudié Tform1::ConnexionClick, implémenter et tester la méthode Base::Connecte.
4) Implémentation et test unitaire de la méthode myBase::AfficheTouteLaTable
A partir du code de la méthode myBase::AfficheTouteLaTable(AnsiString table,TStrings *item),
réaliser et tester la méthode myBase::AfficheTouteLaTable(AnsiString table,TStrings *item, AnsiString ordonneParChamp).
Cette méthode est appelée par Tform1::TableTrieeParClick.
5) Implémentation et test unitaire de la méthode myBase::Mini
La méthode Tform1::MiniClick appelle la méthode myBase::Mini. Produire le code et tester cette méthode.
6) Réaliser la méthode Tform1::EnregistrementMiniClick
7) Implémentation et test unitaire de la méthode myBase::Modifie
La méthode Tform1::ModificationClick appelle la méthode myBase::Modifie. Produire le code et tester cette méthode.
8) A partir de Mini et EnregistrementMini, ajouter et tester les méthodes Maxi et EnregistrementMaxi à la classe myBase.
9) Ajouter et tester une méthode void myBase::Insere(AnsiString table,AnsiString champ, AnsiString valeur)
10) Créer et tester la méthode myBase::Insere(AnsiString table,AnsiString chp1, AnsiString chp2, AnsiString val1,AnsiString val2)
11) Réaliser et tester la méthode AnsiString myBase::Selectionne(AnsiString table,AnsiString chp, AnsiString val)qui retourne
l'enregistrement(s) ayant chp=val.
Critères d'évaluation:
- appréhension du système de développement en autonomie
- utilisation judicieuse de l’aide et des exemples
- niveau d’avancement
- rédaction du compte-rendu contenant notamment la description des tests.