Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/09/2011, 00h05   #1
Invité régulier
 
Inscription : août 2008
Messages : 25
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 25
Points : 7
Points : 7
Par défaut Emploi du caractère * ou son équivalent en SQL

Bonjour à tous

A partir d'un formulaire indépendant, je construit une requete en partant du VBA pour former les termes de l'expression "WHERE...

Je souhaitais pouvoir faire un critère en utilisant une partie de texte comme on le fait en direct dans une requète par: comme "*" & txt & "*".

J'ai bien vu que cela n'était pas aussi simple quand on essayait de l'écrire pour l'introduire en SQL, le * pourrait être le %, etc etc.

Pour l'instant, je cherche seulement à obtenir un résultat avec un début de texte, voici les essais réalisés sans succès, seuls ceux marqués ok ont ramené l'enregistrement qui correspondait au texte complet (toto) mais ils ne le ramènent pas si le texte est incomplet (tot par exemple)

Code :
1
2
3
4
5
6
7
8
'Comme 'toto%'      p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "%" & "'"
'Erreur synthaxe    p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "%" '"
'Comme 'toto%'      p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "%'"
'Erreur synthaxe    p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "'%"
'Erreur synthaxe    p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "'" & "%"
' operateur abs     p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "'" & "*"
' ok                p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "'"
' ok                p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " = '" & p_varValeurChamp & "'"
Si qqu'un a la solution, merci d'avance
pedro91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 10h03   #2
Membre Expert
 
Avatar de nico84
 
Homme Nicolas Guimbal
Consultant/développeur ERP
Inscription : mai 2008
Messages : 1 256
Détails du profil
Informations personnelles :
Nom : Homme Nicolas Guimbal
Âge : 49
Localisation : France

Informations professionnelles :
Activité : Consultant/développeur ERP
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2008
Messages : 1 256
Points : 1 872
Points : 1 872
Il manque le seul qui marche
Code :
p_strsqlWhere = " WHERE " & p_strTable & p_strNomChamp & " like '" & p_varValeurChamp & "*'"
% est à utiliser avec Oracle mais pas avec Access
nico84 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/09/2011, 13h17   #3
Invité régulier
 
Inscription : août 2008
Messages : 25
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 25
Points : 7
Points : 7
Par défaut Effectivement! Celle là marche!!!

J'avais essayé sans doute cette combinaison mais avec des espaces, merci donc.
Meme pas besoin de poser la questionn subsidiaire qui était le synthaxe à employer poour le * avant, son symétrique marche (soit like *').

Ce forum est vraiment très efficace et sympa.
pedro91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2011, 11h41   #4
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 089
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 089
Points : 11 622
Points : 11 622
Bonjour,

Ce forum est tellement efficace qu'il évite même de poser des questions... En consultant d'abord les tutos.

Comme celui-ci par exemple :

http://loufab.developpez.com/tutorie...operateurlike/

Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 21/09/2011, 00h42   #5
Invité régulier
 
Inscription : août 2008
Messages : 25
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 25
Points : 7
Points : 7
Par défaut Forum et/ou tutoriels

J'avais bien lu attentivement ton tuto, mais pas trouvé l'enchainement à faire entre * et le ' à placer devant un controle comportant du texte, cela avec des espaces ou pas d'espaces donne un nb de combinaisons étonnant! A ma décharge, j'avais aussi regardé d'autres sources qui m'avaient fait partir sur le %!

Peut etre faudrait-il rajouter une petite ligne toute simple pour les béotiens comme moi!
pedro91 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/09/2011, 09h40   #6
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 089
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 089
Points : 11 622
Points : 11 622
% et * c'était le chapitre V

Pour le ' et " ce n'est pas du tout lié à cet opérateur mais à l'utilisation de SQL dans VBA (qui est un tout autre sujet). Tu peux trouver ça dans le tuto sur le débogage de requete en VBA.
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h24.


 
 
 
 
Partenaires

Hébergement Web