MODULE DE CLASSE : BASE DE DONNÉES ADODB

cs_acecel Messages postés 10 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 20 janvier 2006 - 13 oct. 2005 à 10:42
cs_acecel Messages postés 10 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 20 janvier 2006 - 13 déc. 2005 à 16:38
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/34183-module-de-classe-base-de-donnees-adodb

cs_acecel Messages postés 10 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 20 janvier 2006
13 déc. 2005 à 16:38
Salut
C'est exact, il serait plus judicieux d'utiliser plutôt :
"Select Case cTempdbType "
('Select Case dbType' fait appel à la méthode Get dbType, et par conséquent il vaut mieux utiliser la variable locale cTempdbType)

Et en effet, il ne faut pas oublier non plus d'ajouter la reférence Microsoft ActiveX Data Objects 2.8 Library.

Ce module de classe est vraimment tout bête, dans l'appli que j'avais développé, il permettait juste de ne pas avoir à modifier le code du programme si l'utilisateur souhaite changer le type de la base de donnée.

J'ai aussi volontairement utilisé le même nom que les fonctions standard de ADO (Execute et OpenRecordSet) ce qui limite le nombre de modifications à effectuer dans le programme.
(déclarer la base de donnée en "New ClsDatabase" au lieu de "DataBase", déclarer les recordsets en "New ADODB.Recordset" au lieu de "Recordset", et enfin définir les paramètres de connexion à la base de donnée)
zazics Messages postés 3 Date d'inscription vendredi 7 mai 2004 Statut Membre Dernière intervention 2 décembre 2005
2 déc. 2005 à 14:57
salut,
je pense qu'il y a une petite erreur à la ligne 90.
Ne faudrait-t-il pas retirer le "pdbArticle" puisqu'il n'est pas connu ici.

'Select Case pdbArticle.dbType' => 'Select Case dbType'

De plus, je peux ajouter qu'il ne faut pas oublier d'aller dans le menu PROJECT -> REFERENCES et cocher la case ou il est écrit:
Microsoft ActiveX Data Objects 2.8 Library
afin que l'objet ADODB soit connu

Sinon, merci pour le code, j'en avais besoin étant donné que je suis débutant sur VB
cs_acecel Messages postés 10 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 20 janvier 2006
13 oct. 2005 à 10:42
Dans le programme

Pour Déclarer la base :

Dim pBase as New ClsDatabase



Pour Affecter les variables (dbPath, dbDriver...) :

pBase.dbType "ACCESS" ou pBase.dbType "AUTRE"
pBase.dbPath = Mon_Chemin
...



Pour Ouvrir la connexion :

pBase.Connexion



Pour Ouvrir un recordset :

Set Recordset = pBase.OpenRecordset("Select * from..")




Pour Executer une requête SQL simple :

pBase.Execute "Update ..."



Pour Fermer la connexion :

pBase.Fermeture