Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Recherche Dans base de données [ Base de données / SQL Server ] (gatita_dev)

jeudi 22 novembre 2007 à 11:40:29 | Recherche Dans base de données

gatita_dev

Bonjour,
Je veux effectuer un moteur de recherche dans une base de données, quand je cherche un seul mot ça marche mais dés qu'il y a plusieurs mot ça retourne rien. Est ce que quelqu'un peut m'indiquer comment je peux le faire?
Merci 

jeudi 22 novembre 2007 à 11:43:53 | Re : Recherche Dans base de données

esus1985

Membre Club
Bonjour,

peux tu nous mettre ton code s'il te plait, ca ira mieu pour trouver la cause ^^

jeudi 22 novembre 2007 à 15:42:09 | Re : Recherche Dans base de données

gatita_dev

En fait, j'ai mis juste le code pour chercher un seul mot et j'ai pas trouvé la méthode pour traiter plusieurs mots, j'ai utiliser la requête suivante

select * from news where titre like '%"

& Mot1 & "%' and description like '%" & Mot1  & "%' or description like '%" & Mot1 & "%' or titre like '%" & Mot1 &  "%'"

Ma question c'est comment je peux faire pour que je puisse chercher plusieurs mot?

Merci

jeudi 22 novembre 2007 à 17:15:41 | Re : Recherche Dans base de données

esus1985

Membre Club

c'est du pur sql a ce niveau la.

Tout dépend ce que  tu veux :

mot1 et mot2

"select * from news where (titre like '%" & mot1 & "%' or description like '%" & mot1 & "%') and (titre like '%" & mot2 & "%' or description like '%" & mot2 & "%') "

mot1 ou mot2.

"select * from news where (titre like '%" & mot1 & "%' or description like '%" & mot1 & "%') OR(titre like '%" & mot2 & "%' or description like '%" & mot2 & "%')"

après, si tu veux que le nombre de mot varie, tu mets une boucle sur l'écriture du where.

n'oublies pas les parenthèses, c'est mieu d'être rigoureux à ce niveau là.

j'ai fait un test en sql directement

select * from matable where ( champ1 like '%mot1%' or champ2 like '%mot1%' )or( champ1 like '%mot2%' or champ2 like '%mot2%' )

ca passe.



jeudi 22 novembre 2007 à 17:55:42 | Re : Recherche Dans base de données

gatita_dev

Oui ça marche mais je sais pas comment récuperer chaque mot à part en asp.net, parce que j'aurai une chaine que je doit divider en mot.
Est ce que je met la chaine dans un tableau et puis générer automatiquement la requete sql selon le nombre de mot?


jeudi 22 novembre 2007 à 19:00:02 | Re : Recherche Dans base de données

esus1985

Membre Club
alors, comme ca de tête,

si tu as une chaine avec "mot1 mot2 mot3" (les mots ne contenants pas d'espace ou alors sinon, tu separes par un autre caractère que l'espace)

tu utilise la fonction split
mavar=split(ListeDeMot," ")

la variable mavar deviens un tableau contenant les mots

ensuite tu fais un
i=0
dim req="SELECT* from news where "

for i = 0 to ubound(mavar) 'ubound envoyant l'indice le plus elevé du tableau
   if i = 0 then
req = req & "(titre like '%" & mot1 & "%' or description like '%" & mot1 & "%')
else
req =req & and "(titre like '%" & mot1 & "%' or description like '%" & mot1 & "%')
end if

next

et tu executes ta requête.

voila, c'est fait a l'arrache masi ca devrait fonctionner ^^

bonne soirée

jeudi 22 novembre 2007 à 19:03:15 | Re : Recherche Dans base de données

gatita_dev

Ok, Merci je vais tester et je te tiendrai aux courant



Cette discussion est classé dans : base, données, mot, recherche


Répondre à ce message

Sujets en rapport avec ce message

moteur de recherche [ par 3bila ] 3bilaBonjour tout le monde,Mon sujet de stage concerne la réalisation d'un moteur de recherche en plein texte pour le site intranet d'une administrati Recherche dans toute la base de données [ par RugbyOne ] Bonjour, Je vous expose mon problème : - J'ai une base de données SQL Server 2000 qui comporte une vingtaine de tables. - Une application en ASP Référencer une base de données access [ par ralebole ] Bonjour, Comment référencer une base de données access dans les moteur de recherche, mais lien son placés en boucle Do While dans un combo, voici un b asp.net connexion à une base de données [ par mourad183 ] slt tout le monde je debute au dotnetje developpe un site web asp.net (mon premier) , et voici mon premier probleme rencointrer j'ai creer une bse de Gestion d'utilisateurs [ par Julien237 ] Bonjour à tous,Je fais pour la première fois un site utilisant un système de login de membres et je me pose trois questions basiques mais dont je n'ai Comment utiliser sa propre base de données [ par yanis7518 ] Salut a tousje voudrais savoir si au lieu d'utiliser les tables crées par aspnet_regsql.exe je pouvais utiliser mes propres tables.Je dois créer un si SQl server 2000 à défaut de 2005 ... ! [ par bingss ] Bonjour,Voici mon problème,J'ai développé un site en ASP.NET 2.0 avec Visual Web 2005(Express).Ce site est lié à une base de données que j'ai développ Imprimer du texte ? [ par ralebole ] Bonjour, je voudrais imprimer des champs d'une base de données access sur une imprimante à partir d'un bouton d'une page asp mais pas le contenu de la base de données [ par chader_rached_lepsis ] je suis un debutant je veux lier une base de donnee vfoxpro sur une page asp et pouvoir faire une recherche par code et laffiche sur ne page asp aider Base de données ou fichiers ? [ par mathmax ] Bonjour,Je voudrais développer un site d'une cinquantaine de page environ (mais amené à grandir). La pluspart des pages de ce site sont statiques (sim


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,296 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.