Problème de connexion à une base mdb

Signaler
Messages postés
24
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
19 mai 2004
-
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
-
Bon, d'avance désolée de vous emmerder avec mes problèmes de newbie, mais là j'avoue que je suis un peu perdue, je vois pas ce qui cloche (et pourtant, il doit y avoir quelque chose qui m'a échappé, sinon ça fonctionnerait :big) .)
Bref voici mon code où je suis sensée accéder à ma base, et l'afficher dans un datagrid. Le nom de ma table est especes_detail et ma base se trouve à la racine de mon lecteur d.

string connStr = "provider=Microsoft.Jet.OLEDB.4.0;Data Source=d\basepatrimoinearbore.mdb";

string selStr ="SELECT * FROM especes_detail";

OleDbDataAdapter Adapt= new OleDbDataAdapter (selStr,connStr);
System.Data.DataSet dataSet1= new System.Data.DataSet();
Adapt.Fill(dataSet1);

dataGrid1.DataSource = dataSet1.Tables[0];


Le programme compile mais à l'exécution, j'obtiens une erreur et "l'explication" suivante :
Le chemin d'accès contient des caractères non conformes.
Me v'là bien embêtée...

des frites !

9 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
46
Est-ce que tu as bien doublé le " \ " dans le chemin menant jusque ta base ?
Pour verification, essaie de faire un MessageBox.Show(connStr) si tous les caracteres du chemin sont presents.

Si jamais, essaie en mettant un @ devant ta connectionString

@"provider=Microsoft.Jet ....

a++
Mx
Messages postés
56
Date d'inscription
lundi 7 juillet 2003
Statut
Membre
Dernière intervention
14 novembre 2007

Essaie :
... Data Source=d:\\basepatrimoinearbore.mdb";
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
et
"provider=Microsoft.Jet.OLEDB.4.0;Data Source=d\basepatrimoinearbore.mdb";

ca serait pas plutot :

"provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\basepatrimoinearbore.mdb";

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
24
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
19 mai 2004

Merci pour toutes ces réponses, vous aviez tous raison...

j'avais omis les ':' parce que je pensais que l'erreur pourrait venir de là.
Et c'était bien le \ qui merdait car il n'était pas doublé <= erreur de débutante ! lol

Bref, maintenant ça fonctionne pour la connexion, et le prog s'arrête 2 lignes + loin mais je vais chercher ça toute seule comme une grande ! Même si vous me verrez appeler à l'aide demain :shy) (l'espoir fait vivre ! Un jour je saurai programmer sans aide !)

Merci pour tout !

des frites !
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
a demain alors :big)

;)

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
24
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
19 mai 2004

Comme promis me voici de retour !
Bien entendu je n'ai pas trouvé de solution à mon problème, après avoir (apparemment) réussi la connexion mon programme plante à la ligne "this.adapt.Fill(dataSet1);"
et me sort le message d'erreur "Une exception non gérée du type 'System.Data.OleDb.OleDbException' s'est produite dans system.data.dll".

Je remets mon code pour plus de clarté :
string connStr = "provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\basepatrimoinearbore\\baseaccess.mdb";

string selStr ="SELECT * FROM especesdetail";
this.adapt= new OleDbDataAdapter (selStr,connStr);
this.dataSet1= new System.Data.DataSet();
this.adapt.Fill(dataSet1); 
dataGrid1.DataSource = dataSet1.Tables[0];


J'ai sûrement oublié quelque chose de complètement basique qui fait que tout plante, ou alors il y a une grosse incohérece dans mon code (ce ne serait pas la 1ère fois après tout :-p )
Tout cela pour dire que si vous êtes inspirés par le sujet ou que vous connaissez un bon tutorial sur le sujet...

des frites !
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
hello,

j'ai fait un rapide test et le code ci dessous fonctionne chez moi... a voir :

string connStr = "provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\bd1.mdb";

string selStr ="SELECT * FROM test";
OleDbDataAdapter adapt= new OleDbDataAdapter (selStr,connStr);
System.Data.DataSet ds= new System.Data.DataSet();
adapt.Fill(ds); 
dataGrid1.DataSource = ds.Tables[0];


Arthenius

"Ce qui ne me tue pas, me rend plus fort..."
Messages postés
24
Date d'inscription
mardi 27 avril 2004
Statut
Membre
Dernière intervention
19 mai 2004

Hou, j'ai honte !

Le code que tu as écrit ne fonctionnait pas pour moi, j'ai donc chercher à en savoir un peu plus sur l'exception et la douloureuse vérité s'est révélée à moi : nom de base mal orthographié :blush) Mais maintenant j'ai un beau code qui marche !!!!! Merci pour ton aide !!
Désolée d'avoir fait chier le monde avec mes conneries !!!

des frites !
Messages postés
1182
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
13
Ca arrive ... :-p

le forum est la pour ca :)

Arthenius

"Ce qui ne me tue pas, me rend plus fort..."