Cours Visual Basic et les bases de données, tutoriel & guide de travaux pratiques en pdf.
Le concept de « Base de Données » est largement utilisé dans tous les domaines qui impliquent l’informatique. Visual Basic est, par excellence, un langage qui facilite le travail avec ce concept. Avant de commencer à présenter les liaisons entre VB et les bases de données, faisons une brève introduction au concept de base de données.
Une base de données est une structure spécialement conçue pour la gestion de grandes quantités de données. Par gestion on comprend l’ajout, la suppression, la modification et l’utilisation (calculs, manipulations, sélections, affichage, etc..) de données de différents types. D’une base à l’autre, les types de données peuvent être différents. Par exemple dans une base de type Access il existe le type booléen (par exemple Vrai/Faux ou Oui/Non, etc.) tandis que dans une base de type MSSQL ce type n’existe pas et, donc, il faudrait le remplacer par un autre−char*1 (« V »/ »F ») ou même entier (0/-1). La façon d’enregistrer les données ainsi que la façon de lire les données peut différer d’un type de base à l’autre. À cause des différences entre les bases de données, la manière avec laquelle on travaillera sera aussi différente.
La base «BaseTP4.MDB»
Cette base de données est constituée de3 tables, trois ensembles de données regroupées, l’une contenant les données sur les étudiants inscrits, une autre sur les départements d’attache de ces étudiants et la dernière sur les groupes où sont classés les étudiants.
On notera que la fiche de l’étudiant contient le«numéro» du département plutôt que le nom du département et le numéro de groupe plutôt que sa description. Notez aussi que le nom du champ «Num Dept» contient un espace, ce qui est permis en Access.
On pourra donc aller chercher des données soit dans une table (ex. «Liste des nom des étudiants avec leur note de l’intra») ou dans plusieurs tables (ex. «Liste des étudiants dont le nom du département est « Chimie »» ou bien «Liste des étudiants (Nom et Code permanent) avec le nom de leur département et l’horaire de leur cours».
Communication avec les bases de données
Afin d’établir la communication entre les applications et les bases de données, les langages de programmation mettent à la disposition du programmeur, différents outils. VB est un langage qui offre plusieurs outils simples mais efficaces dans le but de faciliter la programmation et l’utilisation de telles liaisons.
DAO, ADO et ADO.NET
Les versions 5 et antérieures de VB utilisaient des outils deconnexion rassemblés sous le vocable de DAO (Data Access Objects) alors que la version 6 offrait des outils plus performants regroupés utilisant la technologie «OleDb» et regroupés sous le vocable ADO (ActiveX Data Objects). VB.NET ne supporte plus le DAO mais continue de supporter le ADO pour fins de continuité. Mais l’accent pourles nouvelles applications est mis sur une version mise à jour (améliorée) de ADO : les outils ADO.NET qui peuvent gérer les types de bases les plus variées, incluant même des fichiers texte, Excel, Serveurs SQL, pages Web, intranets, banques d’images, etc. Microsoft recommande donc d’utiliser le modèle ADO.NET puisque les outils ADO seront abandonnés éventuellement. Ceci dit, toute la structure de ces objets est bicéphale :
la partie «OleDb» pour la plupart des fournisseurs de données actuels et la partie SQL Client spécialisée pour la gestion des bases fournies par la version 7 (et ultérieure) du serveur SQL de Microsoft.
Classes OleDb
L’ensemble de la technologie OLE DB, intégrée au FrameWork.NET, permet au programmeur de créer des commandes qui sont indépendantes des bases de données utilisées en passant par les différents objets intermédiaires qui servent alors d’interface. On change de base ? On ajuste les interfaces et on n’a pas à modifier le programme.
Classe OleDbConnection
Un objet de cette classe possède une propriété fondamentale de type «String», la «ConnectionString» qui décrit à la fois le type de liaison (le moteur de recherche et le fichier ou base à ouvrir). Supposons que la variable «String» contient un texte adéquat, alors on peut écrire
Dim UneConn As OleDbConnection
UneConn = New OleDbConnection
UneConn.ConnectionString = UneChaine
UneConn.Open() ‘ Méthode qui «ouvre» la connexion.
ou, plus brièvement, en utilisant le constructeur «New»
Dim UneConn As OleDbConnection = New OleDbConnection(UneChaine)
UneConn.Open() ‘ Méthode qui «ouvre» la connexion.
qui ouvrira alors la connexion. En cas d’erreurdans la chaîne de correction, il y aura interruption du programme avec un message de VB.
À partir de ce moment, on peut utiliser deux ou trois classes d’objets pour, ou bien lire les données de la base, ou bien les modifier et les mettre à jour.
Après la lecture des données, on peut bien sûr fermer la connexion avec UneConn.Close()
Propriété ConnectionString
Si on ne connaît pas le libellé de la chaîne de connexion adéquate,on peut utiliser un outil développé en VB6 pour la définir facilement : le fichier «XXX.udl». Un fichier de type «Universal Data Link» contient une chaîne de connexion qui peut être modifiée par un éditeur «Assistant des liaisons de données.
………