Remplir quelques données
Afin d'avoir des données "factices", renseignez les 4 enregistrements suivants dans la table Type : "Jeu", "Base de données", "Internet", "Graphiques" Graphics)". Ces valeurs seront utilisées lors de la sélection du type d'application stocké dans la table des applications (applications). Ensuite, ajoutez une ligne dans la table des auteurs (Auteurs) : 'Delphi Guide', '[email protected]', 'http://delphi.about.com'. Enfin, ajoutez une ligne au tableau Applications : 'Zoom', 'Zooming the Destop', 'Delphi Guide', 'Graphics', 10, 0, 02/20/2001, et faites en sorte que le dernier champ (Photo) soit vide.
Comment gérer ces bases de données "vierges"... sera expliqué dans les chapitres restants de ce didacticiel.
Chapitre 2 Connexion à la base de données, à l'aide d'ADO ? BDE ?
Section 1 Connectivité de la base de données Delphi
Comme indiqué dans le chapitre précédent, une base de données est une collection d'une ou plusieurs tables qui stockent des données dans un format structuré. Ces tableaux contiennent des données sous forme de lignes et de colonnes. Lorsqu'une base de données contient une ou plusieurs tables, celles-ci contiennent généralement des données discrètes mais liées. MS Access, Interbase et SQL Server utilisent un seul fichier pour représenter une base de données complète (MS Access est un fichier *.mdb). Paradox et dBase, en revanche, sont définis par des tables et des fichiers distincts qui représentent des index et des relations entre tables. Tous les fichiers décrivant la base de données Paradox sont généralement stockés dans un seul répertoire. Bien entendu, Delphi peut fonctionner dans les deux sens.
Grâce à Delphi, nous pouvons nous connecter à différents types de bases de données : base de données locale ou C/S (serveur distant). La base de données locale est stockée sur un disque local ou sur le réseau local. Le serveur de base de données distant est généralement situé sur une machine distante. Les types de bases de données locales incluent Paradox, dBase et MS Access. La base de données C/S inclut MS SQL Server, Interbase ou Oracle.
Les bases de données locales sont souvent appelées bases de données à un seul niveau. Une base de données à un seul niveau répond immédiatement à toute modification (modification de données, insertion ou suppression d'enregistrements). Une base de données à un seul niveau présente des limites quant à la quantité de données que la table peut contenir et au nombre d'utilisateurs que l'application peut prendre en charge. Lorsque la base de données contient des informations sur des relations complexes entre plusieurs tables ou lorsque le nombre de clients augmente, vous devez utiliser une application à deux niveaux ou à plusieurs niveaux. L'application client s'exécute sur la machine locale ; le serveur d'applications s'exécute généralement sur le serveur et la base de données peut se trouver sur un autre serveur. L'idée derrière une architecture multiniveau est que le programme client peut être très petit car le serveur d'applications peut effectuer une grande partie du travail. Cela vous permet d'écrire des applications dites client léger.
Lorsque nous écrivons une application de base de données dans Delphi, nous devons utiliser un moteur de base de données pour accéder aux données de la base de données. Les bases de données vous permettent de vous concentrer sur les données auxquelles vous accédez plutôt que sur la manière d'y accéder. Depuis la première version, Delphi fournit BDE (Borland Database Engine) aux développeurs de bases de données. En plus de BDE, à partir de la cinquième édition, Delphi prend en charge l'interface de base de données ADO de Microsoft.
Ce didacticiel se concentrera sur le développement d'applications de base de données à un seul niveau avec la base de données locale MSAccess.
Section 2 Moteur de base de données Borland (BDE)
BDE est la couche d'accès aux données commune à tous les produits Borland, notamment Delphi et C++Builder. BDE est une collection de DLL (Dynamic Link Libraries) et d'outils. La beauté de tout cela est que tout traitement de données est transparent pour le développeur. BDE est livré avec un ensemble de pilotes qui permettent à votre application de communiquer avec de nombreux types de bases de données différents. Ces pilotes convertissent les commandes de base de données de haut niveau (telles que open ou post) et les tâches (verrouillage d'enregistrement ou structures SQL) en commandes spécifiques requises par un type de base de données spécial : Paradox, dBase, MS Access ou toute source de données ODBC. L'API BDE (Application PROgramming Interface) contient plus de 200 procédures et fonctions, disponibles à partir de l'unité BDE. Heureusement, vous n’avez presque jamais besoin d’appeler directement ces programmes. Au lieu de cela, vous utilisez BDE via le composant d'accès aux données de la VCL (Traducteur : Bibliothèque de composants visuels) : la page d'accès aux données (Data Access) située dans le panneau des composants. Pour accéder à une base de données particulière, une application n'a besoin que de connaître l'alias de la base de données (Alias) pour accéder à toutes les données de cette base de données. L'alias est créé dans l'administrateur BDE et spécifie les paramètres du lecteur et l'emplacement de la base de données. BDE est livré avec un ensemble de pilotes de base de données pouvant accéder à un large éventail de types différents d'éléments de données. Les pilotes BDE standard incluent Paradox, dBase, MS Access et le texte ASCII. Bien entendu, n'importe quel pilote ODBC peut également être utilisé par BDE via l'administrateur ODBC.
Les applications Delphi qui utilisent BDE pour accéder aux bases de données nécessitent que BDE soit distribué pour l'application. Lors de la configuration du BDE d'une application, vous devez utiliser InstallShield Express ou un autre programme d'installation spécifique à Borland.
BDE en tant que moteur de base de données présente des avantages et des inconvénients. Cependant, pourquoi et quand vous devriez (ou ne devriez pas) utiliser les méthodes BDE au lieu de certaines techniques non-BDE ne seront pas abordés dans ce didacticiel.
Puisque ce didacticiel traite d'ADO/MSAccess, le reste du didacticiel se concentrera sur cette approche non-BDE des bases de données.
22 décembre 2002