Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : vb6, access 2002, et des tas de questions!!! [ Archives Visual Basic / Bases de données ] (Hermios)

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é 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 FICHIER TEXTE ENVOYER BASE DE DONNEES [ par crocmorts ] Salut, j'ai une petite question, je voudrais envoyer un fichier texte vers une base de données .MDBLe fichier texte est du style"Date","Heure","jour"J Connexion à une base acces sur hébergeur depuis une appli locale ? [ par gipon ] Bonjour!j'espère que qq1 pourra m'aider parque ça fait 2 jours que je sèche. Mon problème:- je dispose d'un compte sur un hébergeur où sont stockés mo Problème de caractère dans une URL [ par dimitriusai ] Bonjour, je block sur un problème de caractère.(vb.net)J'utilise pour une application l'envoie d'information par url(GET).Quand j'envoie un message av une ou plusieurs tables pour ma base de données ? [ par juninho2lyon ] Bonsoir Voici l'interface de mon application: [url="http://imageshack.us"][img]http://img230.imageshack.us/img230/3651/appliprojetcl5.jpg[/img][/url] Ouverture de plusieurs tables access en même temps [ par jue26 ] Bonjour à tous! J'ai un soucis et j'ai beau chercher dans le forum je n'ai pas trouvé de réponse... Je viens à vous pour m'aider ou me proposer une s ouvrir plusieurs URL [ par marco62118 ] Bonjour à toutes et tousJe voudrais ouvrir plusieur page internet en même temps j'utilise l'api "Public Declare Function ShellExecute Lib "shell32.dll Indexation et valeurs [ par nagstef ] Bonjour, je vais essayer de bien exprimer ma demande !J'ai une base de donnée (format calc de Ooo). Dans cette base, sur une meme colonne de centaines Problème de champ date avec requête SQL sous Excel [ par Bruno25 ] Bonjour,   J'ai un problème avec l'écriture d'un champ date "DATSP" dans une base de données sous excel que j'alimente avec une connection <font f


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,530 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.