Requete Adodc

Résolu
ftanguay Messages postés 3 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 25 mai 2006 - 24 mai 2006 à 22:59
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 25 mai 2006 à 16:30
Bonjour,

  Lorsque je fais une requete avec :
ado_search.RecordSource "select * from composante where description '" + txt_search.Text + "'"

Tout fonctionne a merveille, cepedant jessaie de remplacer ca par un "Begins" ou "Contains" et adodc me renvoit l'erreur suivante:

ado_search.RecordSource = "select * from composante where description Begins '" + txt_search.Text + "'"

[Sybase][ODBC Driver]Syntax error: near 'Begins' in ...where description [Begins] '2'

Le '2' est la valeur de mon txt_search.text

Avez-vous une idée de mon erreur ?

Frank T.

4 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 mai 2006 à 03:21
Salut
En VB6, la concaténation de chaine se fait avec &, pas + (ça marche jusqu'au jour où ça marchera plus)
Que veulent dire 'Begins' et 'Contains' pour toi ?
Ce ne sont pas des instructions SQL valides (je sais pas où tu as pu les voir)
Si un mot commence par :
"... Where monChamp Like '%" & txt_search.Text & "'"
Si un mot contient :
"... Where monChamp Like '%" & txt_search.Text & "%'"
Et finit par :
"... Where monChamp Like '" & txt_search.Text & "%'"

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'accro
3
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 mai 2006 à 03:25
PS :
Fais attention si le contenu de ton txt_search contient des simples apostrophes '
Tu te retrouverais avec un ' inséré dans la syntaxe et SQL refuserait.
Donc, ne pas utiliser le txt_search en direct, mais après traitement (doublage du '), sinon plandate assurée.

"... Where monChamp Like '%" & Replace(txt_search.Text, "'", "''") & "%'"
3
ftanguay Messages postés 3 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 25 mai 2006
25 mai 2006 à 13:38
Merci Jack ! la seule petite correction que j'ai fait c'est que la syntaxe pour ce qui comment par et celle qui finit par sont inversé dans ton premier post.


Commence par :



"... Where monChamp Like '" & txt_search.Text & "%'"

Finit par :



"... Where monChamp Like '%" & txt_search.Text & "'"



Ca fonctionne bien maintenant, merci !

Frank T.
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 mai 2006 à 16:30
Etourderie
C'était pour voir si tu suivais ... lol
0
Rejoignez-nous