OVH Cloud OVH Cloud

Apostrophes dans un Filtre SQL

2 réponses
Avatar
CHACHA
Bonne ann=E9e =E0 tous

J'essai d'effectuer un filtre sur une table (m=E9thode ADO)
si mon filtre contient un seul apostrophe il suffit de=20
doubler celui ci pour que le filtre fonctionne.

Recherche =E0 effectuer : L'eau
Solution : RSTest.Filter =3D "Environnement like 'L''eau'"

mais si mon filtre contient deux apostrophes ou plus le=20
filtre ne fonctionne plus.
Recherche =E0 effectuer : L'eau et l'air
Solution : RSTest.Filter =3D ?

Merci

2 réponses

Avatar
Olivier Delrieu
Salut,

je te propose (sans garanties...) :

RSTest.Filter = "Environnement LIKE L[']eau"
et, selon ce que tu veux effectuer :
RSTest.Filter = "Environnement LIKE " & chr(34) & "L[']eau et L[']air" &
chr(34)
ou :
RSTest.Filter = "(Environnement LIKE L[']eau) AND (Environnement LIKE
L[']air)"

chr(34) est le code ascii pour "
http://www.asciitable.com/
le [] est recommendé dans la ficher d'aide de la function LIKE dans ACC

Olivier


"CHACHA" a écrit dans le message de
news:049401c3d7d1$01ba2920$
Bonne année à tous

J'essai d'effectuer un filtre sur une table (méthode ADO)
si mon filtre contient un seul apostrophe il suffit de
doubler celui ci pour que le filtre fonctionne.

Recherche à effectuer : L'eau
Solution : RSTest.Filter = "Environnement like 'L''eau'"

mais si mon filtre contient deux apostrophes ou plus le
filtre ne fonctionne plus.
Recherche à effectuer : L'eau et l'air
Solution : RSTest.Filter = ?

Merci
Avatar
Salut,
je te propose aussi et dans le cas ou tu passe par un Objet Command
d'utiliser parameters plutot que de construire ta query en concatenant, car
dans ce cas le PB devrai etre géré par sql sans que tu est de côtes à
doubler.
@ voir
BossHog

"Olivier Delrieu" wrote in message
news:btq3e0$71r$
Salut,

je te propose (sans garanties...) :

RSTest.Filter = "Environnement LIKE L[']eau"
et, selon ce que tu veux effectuer :
RSTest.Filter = "Environnement LIKE " & chr(34) & "L[']eau et L[']air" &
chr(34)
ou :
RSTest.Filter = "(Environnement LIKE L[']eau) AND (Environnement LIKE
L[']air)"

chr(34) est le code ascii pour "
http://www.asciitable.com/
le [] est recommendé dans la ficher d'aide de la function LIKE dans ACC

Olivier


"CHACHA" a écrit dans le message de
news:049401c3d7d1$01ba2920$
Bonne année à tous

J'essai d'effectuer un filtre sur une table (méthode ADO)
si mon filtre contient un seul apostrophe il suffit de
doubler celui ci pour que le filtre fonctionne.

Recherche à effectuer : L'eau
Solution : RSTest.Filter = "Environnement like 'L''eau'"

mais si mon filtre contient deux apostrophes ou plus le
filtre ne fonctionne plus.
Recherche à effectuer : L'eau et l'air
Solution : RSTest.Filter = ?

Merci