Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1125 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Chaîne de caractère

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Chaîne de caractère

n°1251620
Joo02
Posté le 23-11-2005 à 16:21:29  profilanswer
 

Bonjour,
 
Je suis débutante ...
 
Je voudrais pouvoir exécuter une recherche sur le 'titre d'un livre' à l'aide d'une requête paramètrée. J'aimerais que l'usager puisse entrer le titre, et que la recherche  s'effectue indépendamment des ponctuations que l'usager mettrait ou qu'il ommettrait. Donc la recherche devrait se faire sur  les caractères seulement... Je souhaiterais  qu'il puisse faire sa recherche sur le titre du livre ex: "J'ai trouvé" et que même s'il est entré dans la base de  donnée sous "J'ai trouvé!!!" qu'il puisse le... trouver!!!
 
Est-ce que quelqu'un pourrait me donner une piste?
Merci!!

mood
Publicité
Posté le 23-11-2005 à 16:21:29  profilanswer
 

n°1251730
tegu
Posté le 23-11-2005 à 17:47:56  profilanswer
 

Le mieux serait de bien contrôler la saisie des titres pour éviter les horreurs de mauvaise ponctuation, mais bon... ça ne suffirait pas.
Ce qui suit dépendra sans doute de ta base de données.
 
Tu vas devoir appliquer une transformation "à la volée" de ton champ Titre pour l'épurer des caractères parasites (signes de ponctuation, caractères spéciaux) pour le comparer à la saisie, elle-même transformée via la même formule.
Au plus simple tu peux supprimer tous les signes non alphanumériques.
 
Ta saisie sera traitée par
saisie_transformee = Transformation_alphanum(saisie)
 
Ta clause WHERE de requete devra être du genre
WHERE Transformation_alphanum(Champ_titre) = saisie_transformee
 
Pour supprimer les caractères qui te gênent, un autre post est déjà en cours à ce sujet
Encore faut-il que l'utilisation de la fonction soit autorisée dans ta requete, à toi de voir.
 
S'il te faut plus de marge de manoeuvre dans la tolérance de recherche, vois peut-être du côté de l'algo SOUNDEX et de ses dérivés.

n°1251751
Joo02
Posté le 23-11-2005 à 18:19:06  profilanswer
 

tegu a écrit :

Le mieux serait de bien contrôler la saisie des titres pour éviter les horreurs de mauvaise ponctuation, mais bon... ça ne suffirait pas.
Ce qui suit dépendra sans doute de ta base de données.
 
Tu vas devoir appliquer une transformation "à la volée" de ton champ Titre pour l'épurer des caractères parasites (signes de ponctuation, caractères spéciaux) pour le comparer à la saisie, elle-même transformée via la même formule.
Au plus simple tu peux supprimer tous les signes non alphanumériques.
 
Ta saisie sera traitée par
saisie_transformee = Transformation_alphanum(saisie)
 
Ta clause WHERE de requete devra être du genre
WHERE Transformation_alphanum(Champ_titre) = saisie_transformee
 
Pour supprimer les caractères qui te gênent, un autre post est déjà en cours à ce sujet
Encore faut-il que l'utilisation de la fonction soit autorisée dans ta requete, à toi de voir.
 
S'il te faut plus de marge de manoeuvre dans la tolérance de recherche, vois peut-être du côté de l'algo SOUNDEX et de ses dérivés.


 
 
Merci!! Je croyais qu'Access aurait pu nous donner la possibilité dans les propriétés (après entré de donnée) ou dans les critères d'une requête... de faire un tri en fonction de la ponctuation.
Je vais donc poursuivre mes recherches du côté de SOUNDEX comme tu me l'a suggéré!!   Merci!!!

n°1251885
tegu
Posté le 23-11-2005 à 21:14:51  profilanswer
 

Le problème d'Access n'est pas une insuffisance de système de filtrage (y a plein de moyens) mais bien de filtrer sur une valeur approximative et non pas exacte.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Chaîne de caractère

 

Sujets relatifs
Debutant - Comparaison de chaine de caractèrecompter le nombre de fois que le mot est dans une chaine de caractére:
Date format chaine de caractereExécuter une chaîne de caractère en PL/SQL
Couper chaîne de caractèreinit d'un dict à partir d'une chaîne de caractère [résolu]
remplacer une chaine de caractere dans un fichier en .batCréer un objet à partir d'une chaine de caractère
Conversion de chaine de caractère en numériquerecuperer chaine de caractère
Plus de sujets relatifs à : Chaîne de caractère


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR