Requete Adodc

Résolu
Signaler
Messages postés
3
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
25 mai 2006
-
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
-
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

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
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
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
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, "'", "''") & "%'"
Messages postés
3
Date d'inscription
mercredi 24 mai 2006
Statut
Membre
Dernière intervention
25 mai 2006

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.
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Etourderie
C'était pour voir si tu suivais ... lol