Programmation Delphi Cyril Beaussier Débuter avec l'ADO Version 1.0b – Septembr
Programmation Delphi Cyril Beaussier Débuter avec l'ADO Version 1.0b – Septembre 2003 pour Developpez.com COPYRIGHT ET DROIT DE REPRODUCTION Ce support est libre de droit pour une utilisation dans un cadre privé ou non commercial. Vous n'avez pas l’autorisation de le modifier sans l'autorisation écrite de son auteur. Toute mise à disposition du support sur un autre site que Developpez.com est interdite. Pour un usage dans un but commercial, reportez-vous aux conditions d'utilisation à l'adresse : www.beaussier.com/?pg=condition Si vous souhaitez des améliorations, je suis évidemment ouvert à toute suggestion. Il en est de même si vous constatez une erreur (nul n'est parfait ). Pour cela, il suffit de m'écrire avec pour sujet « Programmation Delphi / Débuter avec l'ADO » dans la rubrique « Contact » de mon site principal : www.beaussier.com Les marques et noms de société cités dans ce support sont déposées par leurs propriétaires respectifs. Delphi est la propriété exclusive de BORLAND. Windows et ACCESS sont la propriété exclusive de Microsoft Corporation. Je ne suis lié avec aucun éditeur ou constructeur informatique. Ce support a été réalisé avec la suite bureautique libre Open Office 1.1 (disponible gratuitement sur http://fr.openoffice.org) Avertissement complémentaire : Les éléments (données ou formulaires) éventuellement inclus dans ce support vous sont fournis à titre d'exemple uniquement. Leur utilisation peut avoir, dans certains cas, des conséquences matériels et juridiques importantes qui peuvent varier selon le sujet dont ils traitent. Il est recommandé d'être assisté par une personne compétente en informatique ou de consulter un conseiller juridique ou financier avant de les utiliser ou de les adapter à votre activité. 2/22 Sommaire 1. INTRODUCTION....................................................................................................................................4 1.1. UN MOT SUR L’ADO............................................................................................................................. 4 1.2. LIMITE DU SUPPORT.................................................................................................................................4 2. PRÉSENTATION.................................................................................................................................... 5 3. PARTIE SERVEUR................................................................................................................................ 6 3.1. BASE DE DONNÉES.................................................................................................................................. 6 3.2. CONNEXION .......................................................................................................................................... 7 4. PARTIE CLIENT.................................................................................................................................... 8 4.1. STRUCTURE DE L’APPLICATION..................................................................................................................9 4.2. INTERFACE UTILISATEUR.........................................................................................................................10 4.3. LA COUCHE ADO................................................................................................................................11 4.4. ACCÈS AUX DONNÉES............................................................................................................................ 16 4.5. AFFICHAGE DES DONNÉES.......................................................................................................................17 4.6. MODIFICATION DES DONNÉES..................................................................................................................18 5. AMÉLIORATION.................................................................................................................................20 6. CONCLUSION...................................................................................................................................... 22 3/22 1. Introduction Ce support traite de l'accès à une base de données MS-Access depuis Delphi. Ayant démarré début 2003 sous cet AGL, j'ai eu tout de suite besoin de développer ce type d’application. Vous trouverez donc à travers ces pages, un didacticiel traitant de mon expérience sur ce sujet. Vous n'avez pas besoin de connaître le Pascal Objet (le langage de Delphi) car vous allez découvrir qu'avec la puissance des composants ADO, il n'y a presque pas besoin de programmer. 1.1. Un mot sur l’ADO L’ADO qui signifie en clair « ActiveX Data Objects », est un système d’accès aux données purement Microsoft dit de haut niveau. C’est-à-dire que la complexité de la connexion et des opérations de lecture écriture est masquée pour le développeur qui l’utilise. Le système ADO a donc l’énorme avantage, si vous désirez vous connecter à des bases Microsoft comme Access ou SQL/Server, d’avoir ses bibliothèques en standard sur la plupart des versions récentes de Windows (98/2000/XP). Ce qui facilite le déploiement en clientèle de vos applications. Note : Pour des versions Windows comme 95 ou NT, vous aurez probablement besoin d’avoir recours au moteur ADO qui est distribué sous la forme du MDAC (reportez-vous au chapitre 3.2. Connexion). 1.2. Limite du support Pour une bonne compréhension de ce support (avec notamment les copies écran), je pars du principe que vous utilisez Delphi dans sa version 7 et MS-Access dans une version 97 minimum. La version de Windows n’a pas d’importance bien que mon ordinateur soit sous une antique version 98SE. En revanche, assurez-vous de disposer d'un paquetage MDAC sur votre ordinateur. Reportez-vous pour cela au chapitre 3.2. Connexion 4/22 2. Présentation Afin de rester le plus simple possible, je décrirai dans ce document, une architecture en mode client/serveur avec le système de gestion de base de données de Microsoft Access. En effet, MS-Access est certainement le SGBD le plus simple à mettre en place puisqu'il ne nécessite pas de serveur dédié et qu'il peut être installé sur la même machine que le programme client. Du côté de Delphi, nous avons à notre disposition un éventail de composants qui vont nous permettre d’utiliser le mode de connexion ADO. Composant Description TADOConnection Permet la connexion à la base et assure le support des transactions. TADOCommand S'utilise principalement pour exécuter des commandes SQL qui ne renvoie pas d'ensemble de résultats1. TADODataSet Accès aux tables de la base avec retour d’information possible. TADOTable Accès physique à une table avec retour d’information possible. TADOQuery Permet l’envoi de requête SQL avec retour d’information. TADOStoredProc Exécute les procédures stockées d’une base. TRDSConnection Permet le transfert de données avec possibilité de triage. 1 La documentation Delphi précise qu'avec la méthode Execute, un TADOCommand est capable de renvoyer un ensemble d'enregistrements. Mais pour l'utiliser, vous aurez besoin d'un composant ensemble de données ADO distinct. 5/22 3. Partie serveur Nous allons maintenant procéder au développement d'une petite application. Celle-ci sera une gestion très simple d'un fichier de clients et que nous appellerons... AdoPrimo. L’intégralité des sources est fournie avec ce support dans le même paquetage. Vous avez les sources des programmes, le programme compilé et la base de données Access. Je vous encourage cependant, à ne vous en servir qu’en dernier recours. 3.1. Base de données D’abord, nous allons créer la structure de notre base de données. L’intérêt de MS- Access fait que nous n’avons qu’un seul fichier généré. Les tables comme les index sont en effet intégrés dans le fameux .MDB. Notre base Client se compose d'une table unique du même nom et dont la structure est la suivante : Client Id Numéro automatique Numéro du client Nom Chaîne (50) Nom du client Adr Chaîne (200) Adresse Cp Chaîne (5) Code postal Ville Chaîne (50) Ville Tel Chaîne (25) Téléphone Pour bien faire les choses, n’oublions pas les index sur les tables. La colonne Client.Id étant déclarée en tant que clé primaire, elle sera ainsi automatiquement indexée2. 2 La documentation MS-Access précise qu'un index est automatiquement créé sur un champ déclaré en tant que clé primaire. 6/22 3.2. Connexion Il est courant pour établir un point de connexion sur une base de données à travers l'ADO, de créer ce que Microsoft appelle un DSN3. Mais ce n'est pas obligatoire et cela tend à ralentir la connexion ADO. Donc dans ce support nous n'aborderons pas ce principe puisqu'avec Delphi, nous pouvons complétement nous passer de cette étape. A noter : Il ne faut pas confondre le DSN et le DNS (Domain Name Server). Ce sont deux choses complètement différentes. L'utilisation d'un DSN est utile notamment pour permettre à l'utilisateur de modifier lui- même le chemin d'accès à la base MS-Access. Il est cependant contraignant car il vous faudra créer ce DSN sur chaque poste où vous installerez votre application. Vérifiez que vous disposez bien de l'accès ODBC à MS-Access. Pour cela, allez dans le panneau de configuration Windows et lancez l'icône de l'Administrateur ODBC. Dans l'onglet « Pilote », vérifiez que le pilote ODBC Microsoft Access est installé. S'il n'est pas dans la liste, vous devez obligatoirement l'installer. Reportez-vous sur le site de Microsoft en tapant le mot clé MDAC pour obtenir le paquetage nécessaire. Attention cependant à la version que vous téléchargez. Le MDAC 2.7 n'inclut pas par exemple, le pilote OLE DB Microsoft Jet. Préférez une version 2.1. 3 Abréviation anglaise de Data Source Name 7/22 4. Partie client Nous allons maintenant passer à la programmation de notre application AdoPrimo. Créez pour cela un dossier du même nom et dans lequel nous allons mettre l'ensemble des fichiers du projet. Notre application va se construire en quatre étapes très simples : La définition de l'interface utilisateur avec la fiche principale. La mise en place des composants ADO pour l'accès aux données. La mise en place du composant d'interface entre l'ADO et l'interface utilisateur. La mise en place des composants de gestion des données pour l'affichage et les opérations d'écriture des données. Nous allons ainsi avoir une hiérarchie de composants qui nous permet d'afficher et de modifier les données de notre table Access. 8/22 4.1. Structure de l’application L'application ne comporte qu'une seule fiche que nous appellerons fPrimo et uPrimo pour son unité Pascal. Une fois Delphi lancé, enregistrons notre fiche principale avec comme nom d’unité Pascal uPrimo et en changeant les propriétés suivantes pour la fiche : Name pour « fPrimo » Caption pour « Gestion Client ADO ». Enregistrez enfin le projet sous le nom AdoPrimo. Dans le menu Projet / Options, donnez une jolie icône pour votre application. 9/22 4.2. Interface utilisateur Pour que notre interface soit agréable pour l'utilisateur, nous allons d'abord placer un composant PageControl sur la fiche. PageControl se trouve sur la palette des composants dans l'onglet Win32... Une fois le composant posé, dimensionnez le pour qu'il tienne sur la totalité de la surface de la fiche. Vous pouvez laisser le nom donné par défaut PageControl1, cela n'a pas d'importance. Dans la Vue arborescente des objets, faîtes un clic droit sur PageControl1 et choisissez le uploads/Litterature/ delphiado-pdf.pdf
Documents similaires










-
37
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Jul 11, 2021
- Catégorie Literature / Litté...
- Langue French
- Taille du fichier 0.4183MB