Goth25
Messages postés75Date d'inscriptionsamedi 26 juillet 2003StatutMembreDernière intervention21 mai 2014
-
21 juin 2007 à 19:49
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 2014
-
21 juin 2007 à 20:29
Bonjours a tous,
Ma question est la suivante :
J'ai une requete sql comme suis :
sql "SELECT * FROM StatSectionAA WHERE sexe in ('M') and [1-1] 1"
j'aimerais pouvoir remplacer le [1-1] par x et y
1-1 = champ dans la base de donnée
x = premier 1
y = deuxieme
J'ai essayer de plein de facon différente x & "-" & y ou "y-x" et plein d'autre mais rien ne fonctionne.. Je suis sur sa doit être toute bête.
Quelqu'un aurait la solution svp
Merci bcp a tous de me lire et bravo pour tout ce que vous faites sur ce site.
P.s. J'utilise Visual basic 6 et une base de donnée Ms Acces 2003
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 juin 2007 à 20:27
Salut
-1- "sexe in ('M')" fonctionne surement, mais la requète doit être longue
sexe = 'M' suffit amplement
-2- pour le [1-1] paramétré, il suffit de constituer correctement le nom du champ sous VB :
and [" & CStr(x) & "-" & CStr(y) & "] = 1
En fait, je suppose, ma boule de cristal et moi, que X et Y sont des variables numériques sous VB et que tu n'as pas utilisé la syntaxe "propre" pour convertir un chiffre en chaine.
"texte & x" donnera "texte 1" alors que
"texte & CStr(x)" donnera "texte1", sans l'espace réservé au signe devant la valeur de X
Pour savoir si la syntaxe ressemble bien au nom réel du champ dans ta DB, il suffit d'ajouter un
Debug.Print sql
juste après sa définition
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)