begin process at 2010 03 20 08:35:52
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 > CONNEXION ADO A UNE BASE DE DONNÉES ACCESS

CONNEXION ADO A UNE BASE DE DONNÉES ACCESS


 Information sur la source

Note :
7,83 / 10 - par 6 personnes
7,83 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Classé sous :connexion, ado, access Niveau :Expert Date de création :08/12/2001 Date de mise à jour :09/12/2001 00:00:00 Vu :16 946

Auteur : ABL-Online

Ecrire un message privé
Site perso
Commentaire sur cette source (15)
Ajouter un commentaire et/ou une note

 Description

Ce petite code fait une connexion ado a une basse de données, de cette façons avec la commande rsado vous pouvez faire des filtre , des tri, des condition dans votre basse de donnée , avec ou sans des requête SQL intégrée a rsado.

Source

  • ' Dans le module
  • Public cnnADO As New ADODB.Connection
  • Public cmdADO As New ADODB.Command
  • Public rsADO As New ADODB.Recordset
  • Public Function OuvreDB(Champsdb As String, Tabledb As String)
  • ' Ouverture de la Base de données des Membres
  • ' Etablissement de la connexion
  • cnnADO.Provider = "Microsoft.JET.OLEDB.4.0"
  • cnnADO.ConnectionString = App.Path + "\DB\Main.mdb"
  • cnnADO.Open
  • ' Fin de l'établissement de la connexion
  • ' Configuration de la commande
  • cmdADO.ActiveConnection = cnnADO ' Etablis la connection
  • cmdADO.CommandText = "SELECT " + Champsdb + " From " + Tabledb ' Identifications des champs de la DB
  • ' Fin de la configuration de la commande
  • ' Configuration et ouverture du RecordSet
  • rsADO.CursorLocation = adUseClient ' Utilisation d'un mode client
  • rsADO.CursorType = adOpenDynamic ' Ouvre en mode dynamique
  • rsADO.LockType = adLockOptimistic ' Verrouille la base de donnée en mode exclusive
  • rsADO.Open cmdADO ' Ouvre le RecordSet
  • ' Fin de la Configuration et de l'ouverture du RecordSet
  • ' Fin de l'ouverture de la Base de données des Membres
  • End Function
  • Public Function GetValue(fld As Field) As String ' fld pour Field (Champs)
  • ' La reprrésentation du contenu des champs dans les zones de texte est réalisée par
  • ' la fonction GetValue. Les champs des bases de données Access qui sont encore vides
  • ' sont identifiés par la Valeur Null, qui ne peut pas être affichée dans une zone de
  • ' texte. Si ce type de valeur est présent (Fonction IsNull), GetValue renvoie une
  • ' chaîne de caractères vide, sinon cette fonction renvoie le contenu du champ par une
  • ' donnée de type String
  • If IsNull(fld) Then ' Si le champs est vide donc Null
  • GetValue = "" ' GetValue retourne une chaîne vide
  • Else ' Dans le cas contraire
  • GetValue = fld ' GetValue retourne la chaîne de caractères du champs
  • End If ' Fin de la condition
  • End Function
  • Public Function SetValue(str As String) As Variant ' str pour string (Chaîne)
  • ' La fonction SetValue est le pendant de la fonction GetValue. Si une zone
  • ' de texte ne contient rien d'autre ques des espaces (fonction Trim$), la
  • ' valeut Null est renvoyée, sinon la fonction renvoie la chaîne de caractères
  • ' après l'élimination des espaces non significatifs.
  • If Trim$(str) = "" Then ' Si après la suppresion des espaces non significatifs est égale a une chaîne vide
  • SetValue = Null ' SetValue retourne la valeur Null pour la DB
  • Else ' Dans le cas contraire
  • SetValue = Trim$(str) ' SetValue retourne la chaine de caractère en suppriment tout de même les espaces non significatifs
  • End If ' Fin de la condition
  • End Function
' Dans le module 

Public cnnADO As New ADODB.Connection
Public cmdADO As New ADODB.Command
Public rsADO As New ADODB.Recordset

Public Function OuvreDB(Champsdb As String, Tabledb As String)
   
   ' Ouverture de la Base de données des Membres
   
   
   ' Etablissement de la connexion
     cnnADO.Provider = "Microsoft.JET.OLEDB.4.0"
     cnnADO.ConnectionString = App.Path + "\DB\Main.mdb"
     cnnADO.Open
     
   ' Fin de l'établissement de la connexion
   
   ' Configuration de la commande
     cmdADO.ActiveConnection = cnnADO                                ' Etablis la connection
     cmdADO.CommandText = "SELECT " + Champsdb + " From " + Tabledb          ' Identifications des champs de la DB
   
   ' Fin de la configuration de la commande
   
   ' Configuration et ouverture du RecordSet
     rsADO.CursorLocation = adUseClient         ' Utilisation d'un mode client
     rsADO.CursorType = adOpenDynamic               ' Ouvre en mode dynamique
     rsADO.LockType = adLockOptimistic             ' Verrouille la base de donnée en mode exclusive
     rsADO.Open cmdADO                              ' Ouvre le RecordSet
   ' Fin de la Configuration et de l'ouverture du RecordSet
   
 ' Fin de l'ouverture de la Base de données des Membres
End Function

Public Function GetValue(fld As Field) As String       ' fld pour Field (Champs)
 
 ' La reprrésentation du contenu des champs dans les zones de texte est réalisée par
 ' la fonction GetValue.  Les champs des bases de données Access qui sont encore vides
 ' sont identifiés par la Valeur Null, qui ne peut pas être affichée dans une zone de
 ' texte.  Si ce type de valeur est présent (Fonction IsNull), GetValue renvoie une
 ' chaîne de caractères vide, sinon cette fonction renvoie le contenu du champ par une
 ' donnée de type String
  
 If IsNull(fld) Then          ' Si le champs est vide donc Null
    GetValue = ""             ' GetValue retourne une chaîne vide
 Else                         ' Dans le cas contraire
    GetValue = fld            ' GetValue retourne la chaîne de caractères du champs
 End If                       ' Fin de la condition

End Function

Public Function SetValue(str As String) As Variant     ' str pour string (Chaîne)
 
 ' La fonction SetValue est le pendant de la fonction GetValue.  Si une zone
 ' de texte ne contient rien d'autre ques des espaces (fonction Trim$), la
 ' valeut Null est renvoyée, sinon la fonction renvoie la chaîne de caractères
 ' après l'élimination des espaces non significatifs.
 
 If Trim$(str) = "" Then      ' Si après la suppresion des espaces non significatifs est égale a une chaîne vide
    SetValue = Null           ' SetValue retourne la valeur Null pour la DB
 Else                         ' Dans le cas contraire
    SetValue = Trim$(str)     ' SetValue retourne la chaine de caractère en suppriment tout de même les espaces non significatifs
 End If                       ' Fin de la condition
 
End Function

   

 Conclusion

Champsdb est un string de type "Nom, Prenom, ..." renvoyant les champs se trouvant dans la base de donnée tandis que tabledb est le nom de la table.

La procédure GetValue reprends les données pour les affichers dans un textbox, flexgrid ou autre

Setvalue est le pendant de GetValue, cette procédure inscrit les données dans la db.

la méthode rsado.update m'est a jours les enregistement

Essayer analyser le code, je reste a votre entière disposition pour vous aider a toute les commande de ce module.

Code source venant de http://www.visual-product.be


 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) GÉNÉRATION DE CODE BARRE 3 DE 9 (CODE39)
Source .NET (Dotnet) CALCUL DE L'IBAN
Source .NET (Dotnet) LISTER LES SITES INTERNET CONFIGURER DANS IIS AVEC ADSI
Source avec Zip Source avec une capture Source .NET (Dotnet) DLL COMBOSENSE , LE COMBOBOX À SAISIE SEMI-AUTOMATIQUE PARFA...
Source avec une capture Source .NET (Dotnet) RETROUVER LES FONCTIONNALITÉS DE VB6

 Sources de la même categorie

Source avec Zip CHARGER DES DONNÉES DEPUIS UN FICHIER TXT DANS UNE BASE DE D... par ig3
Source avec Zip Source avec une capture GESTIONPMPT par mark100
Source avec Zip Source .NET (Dotnet) DATA ACCESS COMPONENT par zaimfaycal
Source avec Zip GESTION ENSEIGNANTS par Elmarzougui
Source avec Zip GESTION D'UNE BIBLIOTHÈQUE par Elmarzougui

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture OPEN ACCESS MDB par MALIKcpp
Source avec Zip CONNEXION BASES DE DONNÉES par l0r3nz1
Source avec Zip DLLSEGURIDAD par ramuel
Source avec Zip UNNE APPLICATION DE GESTION DE BASE DE DONNÉE ACCESS SANS DA... par fnicha1
Source avec Zip CONNEXION ADO ACCESS + FONCTIONS OUTILS par Zlub

Commentaires et avis

Commentaire de BEB le 25/02/2002 16:25:17

De même, on peut pas faire mieux, c'est parfait ?

Commentaire de Mumuri le 12/10/2002 11:09:38

bon ben je vais le prendre alors ;)
merci

Commentaire de cumu le 09/02/2003 20:10:52

parfait ? Ca ne dit pas comment creer une bdd. pas de zip...

Commentaire de kaiser95 le 15/04/2003 12:55:18

Euh...ok c cool...mais t'as coché koi dans reférences sous vb ???

Commentaire de ranouf le 15/09/2003 10:43:17

le truc est sympa je l'ai trouvé aussi ailleurs mais un probleme persiste et je vois pas comment faire, a savoir comment un systeme de multirequete e:
- dans une listeview j'affiche la liste des ordis (select * from Ordinateur)
- dans une autre listview j'affiche les logiciels en fonction de l'ordi ("SELECT L.Id_Log, L.Nom_Log, from Log L, Log_Ordi LO, Ordinateur O WHERE L.Id_Log= LO.Id_Log AND LO.Id_Ordi = "& Id_Ordi.text)

le probleme est que je ne peux avoir plusieurs requete dans un prog enfin j'en suis arrivé a cette conclusion mais bon si ça trouve c du a autre chose

Commentaire de ABL-Online le 15/09/2003 11:27:00

Pour toi faire plusieur requête tu dois :

1 Faire le Select complet de tout les champs

2 Les requêtes se font avec rsado.filter = "[L.Id_Log] like LO.Id_Log ..."

Voilà

Commentaire de SCOY le 10/10/2003 16:30:11

OK, se code fonctionne super bien, mais quand il n'y a encore aucun enregistrement dans une table....
La fonction GetValue ne fonctionne pas...
Erreur d'exécution '3021':
BOF ou EOF est égal à True ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel.
T'as une soluce?

Commentaire de ABL-Online le 10/10/2003 16:43:42

Avant de reprendre des données fait le test suivant :

IF not rsado.RecordCount = 0 Then
       'Code a éxécuter dans le cas où il y a des résultats
Else
       Msgbox "Il n'y a aucun enregistrement !"
End if

Commentaire de SCOY le 10/10/2003 17:01:05

J'ai en effet la Msgbox"Il n'y a aucun enregistrement !" qui s'inscrit, mais ça me dit pas comment contourner le problème.... J'aimerais que ma form se charge quand même pour pouvoir faire un premier enregistrement...Car j'ai une fonction ReadRecord dans form load qui contient la fonction GetValue....

Commentaire de valer le 22/06/2004 10:40:32

bonjour,
j'ai un petit pb lors de l'execution de ce code
j'ai recopie les lignes  et apres je fais
public sub tester()
   dim test as string
dim codeof,table1 as string
test=ouvreDB(codeof, table1)

si j'execute le message d'erreur est "DANS L INSTRUCTION SELECT UN MOT RESERVE OU UN ARGUMENT EST MAL ORTHOGRAPHIE OU MANQUANT OU PONCTUATION INCORRECT"
et en debogage je suis envoyé a cette ligne :
cnnADO.Open

merci

Commentaire de PaTaTe le 29/01/2005 21:33:52

comment faire pour créer la base de données ...
comment supporter les bases de données pourvue d'un mot de passe

Commentaire de nirega le 28/04/2005 18:18:17

question niaiseuse tu va dire.............mais comment je vais chercher mes champs de la table pour les mettre dans mon form ???

oui je suis un ti nouveau ;-)

Commentaire de edistan le 28/11/2005 12:00:24

comment eviter d'ecraser des données lors d'une mise a jour ou d'un ajout de donnée en utikisant l'objet adodb?

Commentaire de New_World le 17/08/2006 12:25:43

salut jsui interesser a votre code et jle trouve parfait mais moi jtravail en c# application web est ce qu il ya pa un moyen de le faire avec;en fait dans c# il ya pa de module alor comment ferai je et merciiiiiii

Commentaire de Shendoo le 22/12/2006 19:53:11

un zip c'est pas compliqué !!!!  
je me répète c vrai mais bon tans pis je regarde même pas

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Connexion ADO de excel VERS ACCESS help !! :'( [ par Metos ] Sub Connexion() Deconnexion 'Au cas ou ! Objconn.Open "PROVIDER=MSDASQL.1;DSN=" & "TestADO", UserId:="", Password:="" Quel est le Provider ADO.NET Base Access [ par gwiwi ] Bnjour,Cela fait 2 jours que j'essaye sous Vb.Net de faire une connexion et d'essayer de lancer une requete sur une base mais je n'arrive pas a me con Connexion ACCESS [ par crn_c21 ] Avec VB je me connecte sois sur une base ACCESS locale, soit sur une base SQL distante avec ADO.Connexion sur ACCESS impossible lorsque les paramètres Connection ADO Visual Basic 6 et Access XP [ par Bibichonchon ] Bonjour,Je souhaite me connecter à une bdd Access XP à partir de VB 6 via ADO.Avant de taper la moindre ligne de code, j'ai voulu tester la connexion Connection avec ADO Visual Basic 6 et Access XP [ par Bibichonchon ] Bonjour,Je souhaite me connecter à une bdd Access XP à partir de VB 6 via ADO.Avant de taper la moindre ligne de code, j'ai voulu tester la connexion connexion access via ado VBA [ par blinix123 ] Bonjour à tous,Bon déja désolé je ne savais pas dans quel thème poster ma question, VBA,ADO,ACCESS,VBSCRIPT...brefRassurer vous aussi avant de poser m Quel méthode de connexion pour une base access ? [ par Robinwood01 ] BonjourJe me remet a programme en VB 6 après avoir arrêté quelques temps.Je dois faire un programme avec une base access pour gèrer le personnel d'une Connexion à une base access [ par linutx ] Bonjour,j'utilise vb 2005 express et j'aimerais me connecter à une base de donnée access pour y récupérer des données et les afficher dans des textbox connexion ACCESS VBA et requête ! [ par blinix123 ] Hello all, Voilou j'essaye d'établir une connexion access via VBA mais ca ne marche pas, en fait la connexion marche, mais pas la requete que je fai Champ NULL en ACCESS/ADO - VB6 [ par jpmaton ] Salut à tous,Comment faire passer un champ texte vide (en VB6) vers un champ fields(x)  NULL (en access)rsMaTable.addnew' si Champ.text = ""' et que j


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,811 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales