begin process at 2012 02 16 10:46:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Bases de données

 > 

vb6, access 2002, et des tas de questions!!!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

vb6, access 2002, et des tas de questions!!!

lundi 1 mai 2006 à 15:28:21 | vb6, access 2002, et des tas de questions!!!

Hermios

Salut à tous J'essaie désespérément de connecter ma bdd access avec un projet vb6, sans résultat. J'ai bien entendu regarder les tutoriaux proposés sur le site (et même sur d'autres, désolé pour la trahison), et celui qui semblerait le mieux marcher est le suivant (j'ai pas retrouvé la référence, alors je le livre tel quel) Public Sub ConnexionBase(Optional ByVal cheminBase As String) Dim ChaineConnexion As String If cheminBase <> vbNullString Then URL_BASE = cheminBase On Error GoTo erreur ChaineConnexion = "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=" & _ URL_BASE & ";Persist Security Info=False;" & _ "JetOLEDB:Database Password=" & dbPassWord cnx.Open ChaineConnexion Exit Sub erreur: If cnx.State Then cnx.Close MsgBox "Erreur de connexion à votre base " & vbCrLf & URL_BASE, vbCritical, _ "Echec Connexion" End Sub ' Permet de définir le mot de passe pour se connecter à la base Public Sub setPasswordBase(Optional s As String = ""): dbPassWord = s: End Sub ' Permet de définir le chemin d’accès à la base Public Sub setURLase(Optional s As String = ""): URL_BASE = s: End Sub Seulement, lorsque je le lance, il me souligne la ligne "cnx.Open ChaineConnexion", et me dit qu'il manque le pilote ISAM En fait, j'ai plus ou moins réussi à connecter ma bdd, mais sans code, juste en la reliant avec un fichier .dsr. J'arrive alors à lire ce qu'il y a dessus, mais pas à écrire... Merci à tous
lundi 1 mai 2006 à 19:35:40 | Re : vb6, access 2002, et des tas de questions!!!

labout

la chaine de connection est mal définie et mal utilisée

Voici le code
Dim connectionString as string
Dim cnx as ADODB.Connection
connectionString=Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\adresse\tabase.mdb; Persist Security Info=False

cnx.connection=ConnectionString
 cnx.open
Il faut incluse la référence
Microsoft Activex data Objects 2.8 Library   ou une version inférieure
Par Projet / Références

Bon courage
labout
lundi 1 mai 2006 à 19:55:10 | Re : vb6, access 2002, et des tas de questions!!!

Hermios

Merci de la réponse, malheureusement, ça ne marche pas (quand je le dis que les ordinateurs me maudisent!!!) Il y a un problème sur la définition de connectionString, je pense que tu as oublié les guillemets, et lorsque je les rajoute, il me dit que la procédure de sortie est invalide Si je les enlève, il apprécie pas du tout le OLEDB.4.0, et me dit qu'il attend une fin de statement(je traduis, le logiciel est en anglais) Je sais que c'est chiant, et j'en suis désolé, mais ça fait deux semaines que je cherche, et rien n'a marché jusqu'à maintenant
lundi 1 mai 2006 à 20:22:37 | Re : vb6, access 2002, et des tas de questions!!!

Hermios

Bon, j'ai finalement compris qu'il fallait mettre ces instructions dans un sub, malheureusement, ça ne suffit pas, il refuse de faire la connexion si l'objet n'est pas ouvert, et si j'ouvre d'abord l'objet, il me dit ne pas trouver le pilote ISAM, on s'en sort pas!!!!
lundi 1 mai 2006 à 21:10:00 | Re : vb6, access 2002, et des tas de questions!!!

labout

Réponse acceptée !

Voila ma chaine de connection sur une de mes appli qui marche bien sur
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Program Files\API-Guide\jmb\api.mdb; Persist Security Info=False"
OLEDB.4.0 car j'ai access 97

Maintenant il faut ajouter la réfétence  par Projet Références
c:\program files\fichiers communs\system\ado\msado15.dll

s'il n'existe pas télécharger MDAC_TYP_2-7.exe chez microsoft et l'installer

Un moyen bon de récupérer la chaine de connection:

Mettre sur le bureau un fichier texte test.txt
le renommer en .udl
double cliquer dessus
Définir la connection à la base de données
Tester la connection
Ensuite ouvrir le fichier test.udl
récupérer la chaine de connection (c'est du texte)

Pas obligé de mettre la connection dans un module mais cela vaut mieux et la déclarer Public pour
accessibilité dans toute l'application.

Je précise que VB VB.NET et les bases de données SQL, Access sont mes spécialité en
conséquence ce que j'indique doit marcher.

Voici un moduler qui contient tout

Option Explicit
Global gConn  As New ADODB.Connection

Sub init
 ConnectStringData = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\inventaire.mdb;Persist Security Info=False"
    Set gConn = New ADODB.connection
    gConn=ConnectStringData
    gConn.Open
end sub

ensuite par exemple dans une sub

Sub machin
 DIM rsBiblio                     As New ADODB.Recordset
 rsBiblio.ActiveConnection = gConn
 rsBiblio.CursorType = adOpenStatic

    
 rsBiblio.Open "select * from Biblio" 
ou bien ce qui evient au même
rsBiblio.Open "select * from Biblio", gConn, adOpenStatic


' faire ce que l'on doit
End Sub

labout

lundi 1 mai 2006 à 23:26:58 | Re : vb6, access 2002, et des tas de questions!!!

Hermios

ok, merci de la réponse si complète!!! La, je vais me coucher, mais j'essaierai dès demain, je te tiens au courant Encore merci
mardi 2 mai 2006 à 19:43:18 | Re : vb6, access 2002, et des tas de questions!!!

Hermios

C bon, ça marche Je me permet cependant de faire de petites corrections: Chez moi, le global, il en veut pas, par contre, Public passe sans problème Ta chaine de connexion ne marchait pas non plus, mais le truc pour en récupérer une personnalisée est parfaite Enfin, je ne doute pas une seule seconde que tu sois spécialisé dans ce domaine, mais je doute fort que tu sois le marabout que j'attend, seul capable de résorber la malédiction dont je suis atteint ;-))) Toujours est-il que je te remercie, je vais envin pouvoir continuer mon travail.
mardi 2 mai 2006 à 20:48:58 | Re : vb6, access 2002, et des tas de questions!!!

labout

très bien, mais je crois que tu as beaucoup à apprendre mais ce n'est plus à moi de le faire
puisque je n'y connais rien et ma chaine de connection ne marche pas c'est.une nouveauté et je ne m'en suis pas aprcçu, un nain doit la corriger en douce.. 

Quant à Global ne marche pas, je te conseilles d'acheter un bouquin de vulgarisation.
VB pour les nuls serait parfait..


labout
mardi 2 mai 2006 à 21:06:16 | Re : vb6, access 2002, et des tas de questions!!!

Hermios

Désolé si tu l'as mal pris, le marabout, c'était juste pour rigoler!!! Et pour me faire pardonner, sache que ta chaine a finalement marché (pas la première fois, mais la deuxième, je cherche pas à comprendre) Mais global, je suis désolé, il le refuse, il donne une raison que j'ai oubliée. Maintenant, comme j'ai oublié de le préciser (et je m'en excuse) je suis débutant en VB, il est possible que tu ne m'aies pas précisé certaines choses évidentes pour toi, mais qui ne me viendraient pas à l'esprit (en l'occurence, je pense au coup du sub, la première fois, mais j'ai certainement fait d'autres erreurs depuis)


Cette discussion est classée dans : base, string, url, cnx, chaineconnexion


Répondre à ce message

Sujets en rapport avec ce message

probleme de connection a ma BDD [ par jbbordas87 ] alors voila ce que j'ai mis dans mon form: Call module1.ConnectionBase("C:\sonde_tps.mdb") et j'ai crée se module: Public cnx As New ADODB.Connectio création table ACCESS [ par thomasaurelien ] Voila je voudrais créer des tables dans ma base ACCESS mais je sais pas où placer mon code car d'après se que j'ai vu sur les sites il y a plusieurs Connexion à une base FIREBIRD??? [ par cedricloffer ] Bonjour à tous, je suis en train de modifier un projet Visual Basic (.net 2008) de manière à désormais travailler avec une base de données FIREBIRD. Lier les tables d'une Base1 dans une Base3 via une Base2 [ par tedtheOrs ] Bonjour, Est il possible de lier les tables d'une base dans une autre via un module dans une troisième. J'ai une Base1 qui contient 3 tables. Je voud requette sur une base paradox vba excel 2003 [ par bat8571 ] Bonjour, je souhaiterai effectuer une requete simple sur une base paradox situé sur mon disque.Pour cela j'ai crer un dsn et utilise adodb. Tout vas Définir en dynamique en VB un nouvel emplacement de la source de données - Crystal Reports 11 - VB6 [ par luddoo91 ] BONJOUR J'ai créer un rapport crystal avec une base de données SQL SERVER 2005. Dans le but de me connecter à plusieurs bases dynamiquement, j'utili Comment construire une base de données. [ par krimo1973 ] Bonsoir je cherche a construire la même base de données mais en insérant mes propre données que j'ai mis sur un fichier excel. Pour le fichier access Connexion base Access 2007 protégé par un mot de passe avec VB2005 [ par Youha ] Bonjour, Je viens de mettre un mot de passe sur ma BDD Access, et je ne sais pas comment me connecter à ma base. J'ai une forme avec une textebox(txtm probleme insertion données [ par joujma5 ] bonjour, je travaille sur un projet avec une base access 2007 mon problème est que le message afficher est insertion avec succès alors qu'on ouvrant l Connexion à une base de donnée avec des textboxs [ par Anakin79 ] Bonjour, J'aimerais faire une connexion à une base de donnée en rentrent les information dans des textboxs (il y en a 3 : Utilisateur, mots de passe,


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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,733 sec (4)

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