Requete SQL pour Access sous VB

VB_nul Messages postés 4 Date d'inscription mercredi 5 mai 2004 Statut Membre Dernière intervention 5 mai 2004 - 5 mai 2004 à 16:29
VB_nul Messages postés 4 Date d'inscription mercredi 5 mai 2004 Statut Membre Dernière intervention 5 mai 2004 - 5 mai 2004 à 17:00
Voila

nomSociete est un RecordSet
db est une DataBase (pas de probleme de connexion)

j'ai une erreur a l'éxécution de cette instruction
Set nomSociete db.OpenRecordset("Select Année from Mandats Where N_Mandat noMandat ")

le but est d'aller chercher l'année dans la table Mandats en fonction du numéro du mandat ( noMandat )
mais ca marche pas ca sort l'erreur "Data type mismatch blabla"
alors que si je met un chiffre a la place de noMandat ca marche !
les simple quotes ca marche pas...
aidez moi je vous en supplie !!!!

4 réponses

cs_PrX Messages postés 91 Date d'inscription lundi 16 septembre 2002 Statut Membre Dernière intervention 2 novembre 2005
5 mai 2004 à 16:45
La reponse a ta question est simple.

Il te faut faire attention a mettre le chiffre dans la string et non la varaible elle-meme
ex:

dim maRequete as String
...maRequete "Select Année from Mandats Where N_Mandat " & noMandat
Set nomSociete = db.OpenRecordset(maRequete)
...


Bon courage, :)

PrX
, :-p Initiate To VB6 And Completely Crazy
0
cs_hasen Messages postés 246 Date d'inscription mercredi 14 avril 2004 Statut Membre Dernière intervention 29 décembre 2008 2
5 mai 2004 à 16:47
Salut

J'ai eu la même erreur il n'y a pas si longtemps que ca, c'est très frustrant.
En fait il y a plusieur choses a savoir quand tu utilise une requete paramètrée dont le paramètre est une variable (ce qui est on cas si j'ai bien tout compris) :
- si ta variable est un nombre, il faut faire " & NomVariable & "
- si c'est une chaine, il faut faire '" & NomVariable & "', mais cela peut produire des erreur si la variable contient des caractères spéciaux (comme le ' par exemple) alors il faut faire " & """" & NomVariable & """ et la ca devrait marcher!

Dis moi si tu as encore des problème

Hasen
0
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
5 mai 2004 à 16:59
labout

Quand tu as un champ avec un espace dans le nom ou un accent il faut le mettre entre [ ] crochets
@+
0
VB_nul Messages postés 4 Date d'inscription mercredi 5 mai 2004 Statut Membre Dernière intervention 5 mai 2004
5 mai 2004 à 17:00
Merci beaucoup les gens !
Ca marche nickel maintenant
0
Rejoignez-nous