RecordSet

Résolu
cs_antonio75 Messages postés 38 Date d'inscription mercredi 11 avril 2007 Statut Membre Dernière intervention 18 mai 2007 - 17 avril 2007 à 13:40
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 - 17 avril 2007 à 14:04
Bonjour à tous,

Je dois me connecter a une base de données Access pour récupérer des données. J'arrive a me connecter mais quand je veux recuperer les différents champs, j'ai une erreur : erreur 3021. BOF ou EOF est egal a true ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel.


voici mon code


Set rst = New ADODB.Recordset
rst.Open "SELECT C1, C2, C3, C4, C5 FROM Table1 WHERE C6 = '& Champ6.Text &'", Connexion, adOpenDynamic, adLockOptimistic
Champ1.Text = rst("C1")
Champ2.Text = rst("C2")
Champ3.Text = rst("C3")
Champ4.Text = rst("C4")
Champ5.Text = rst("C5")
rst.Close

Si quelqun pouvait m'aider parce que la je vois pas vraiment ou peut se situer l erreur,

merci d'avance,

++, Antoine.

9 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
17 avril 2007 à 13:49
tu t'es embrouillé avec les quotes et les guillemets

du coup, ton recordset est vide.... (aucun enregistrement tel que C6 = Champ6.text)

Set rst = New ADODB.Recordset
rst.Open "SELECT `C1`, `C2`, `C3`, `C4`, `C5` FROM `Table1` WHERE `C6` = '" & Champ6.Text & "' ", Connexion, adOpenDynamic, adLockOptimistic
Champ1.Text = rst("C1")
Champ2.Text = rst("C2")
Champ3.Text = rst("C3")
Champ4.Text = rst("C4")
Champ5.Text = rst("C5")
rst.Close, ----
By Renfield

en passant, pas besoin d'un adOpenDynamic, tu ne fais que lire ton enregistrement....

Renfield
Admin CodeS-SourceS- MVP Visual Basic
3
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
17 avril 2007 à 13:44
Bonjour,

Tu es sur d'avoir des enregistrements dans ta table
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
17 avril 2007 à 13:48
OU plutot, es tu sur qu'il existe des enregistrement dans lesquels le champ C6 est égale a la valeur de Champ6.Text.

Sinon, bah, c'est normal
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
17 avril 2007 à 13:50
Salut,

Le problème n'est pa là Nicko11...Il vient de la requête je pense

Essaye cela :
rst.Open "SELECT C1, C2, C3, C4, C5 FROM Table1 WHERE C6 = '" & Champ6.Text &"' , Connexion

A+
Exploreur

 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
17 avril 2007 à 13:51
Désolé Renfield..post croisé

A+
Exploreur

 
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
17 avril 2007 à 13:54
J'avais pas vu mais en meme temps, c'est peut etre un mauvais recopiage, meme si votre hypothese est plus probable.

Si je chipote GRAVE je dirais attention aussi Exploreur ptit faute mais bon c'est du chipotage.
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
17 avril 2007 à 13:58
Vi, j'ai oublié un s à pa, et de fermer par " la requête...lol

A+
Exploreur

 
0
cs_antonio75 Messages postés 38 Date d'inscription mercredi 11 avril 2007 Statut Membre Dernière intervention 18 mai 2007
17 avril 2007 à 14:04
Oups, c etait une erreur de débutant, en meme temps c est ce que je suis... En tout cas, merci a tous pour votre aide rapide et efficace !!!!
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
17 avril 2007 à 14:04
LOL, pour le "s" de "pa", je t'avais deja pardonné.
0
Rejoignez-nous