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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Moteur de recherche en SQL server 2008

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Moteur de recherche en SQL server 2008

n°2142325
Dev580
Posté le 14-05-2012 à 15:07:51  profilanswer
 

Bonjour,
 
Je débute en SQL server, je travaille sous SQL server 2008 et je n'utilise pas le full text search.
Je désire faire un moteur de recherche (il s'agira d'une bête textbox dans laquelle l'utilisateur pourra entrer ce qu'il veut).  
Je dois gérer si l'utilisateur a ou non entré un "et" ou un "ou" parmi les mots.
 
Problème: Étant débutant, je ne vois pas du tout comment faire cela. Il y a énormément de SELECT à faire non, sachant que je dois rechercher dans toute la base de donnée et non pas sur une table seulement?
 
J'aimerais de l'aide sur comment faire cette procédure stockée de recherche, sachant que tous les mots entrés par l'utilisateur sont préalablement enregistrés dans une table de ma base spécialement faite pour ça.
 
Quelqu'un pour m'aider?
 
Merci

mood
Publicité
Posté le 14-05-2012 à 15:07:51  profilanswer
 

n°2143400
Oliiii
Posté le 23-05-2012 à 13:30:40  profilanswer
 

Pour etre honete, une DB c'est pas vraiment fait pour ca.
C'est fait pour stocker des données structurée et pouvoir faire des query pour les recuperer/modifier/effacer.
Le truc c'est qu'on est cencé savoir +- ce qu'on fait et pas devoir chercher un ou plusieurs mots dans toute la DB, donc il n'y a pas vraiment de moyen simple et efficace de le faire.
 
Pour qu'une DB fonctionne bien on doit savoir exactement ce qu'on cherche et exactement ou le trouver.
 
Pour que ton truc fonctionne il faudrai un peut de code avant d'arriver a la DB pour reduire le champ de recherche un maximum, au moins arriver a savoir dans quelle table et sur quelle colonne faire la recherche. Et meme la tu vas avoir des problemes de perfs si tu dois trouver un mot qui peut etre n'importe ou dans une grande chaine de caractere quand ta table a quelques millions de lignes.


Message édité par Oliiii le 23-05-2012 à 13:31:13
n°2143404
rufo
Pas me confondre avec Lycos!
Posté le 23-05-2012 à 13:47:09  profilanswer
 

Y'aurait peut-être intérêt à avoir une table simplifiée précalculée, avec une structure de ce genre :
- ID
- un champ "bloc" texte (insensible à la casse) qui sera une concaténation des champs textes d'un enregistrement d'un table donnée
- un entier représentant le nom d'une table (1 = table titi, 2 = table Toto...)
- en clé étrangère, la clé primaire provenant de la table désignée par le champ précédemment cité
 
Ca veut donc dire qu'à chaque fois qu'un enregistrement est ajouté/modifié/supprimé dans ta BD, faut mette cette table à jour...


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Moteur de recherche en SQL server 2008

 

Sujets relatifs
Server multithread java socketrecherche de la meilleure combinaison possible
Recherche personne pour site de tutoriels informatiqueComment se connecter à la base de donnée windows sql server
APPLICATION PHP/SQLFichiers & structures & String - Fonction de recherche
[Résolu] SQL Server / Procédure stockée avec paramètres optionnelsrecherche en vbs
Requête SQL - Position dans un classement 
Plus de sujets relatifs à : Moteur de recherche en SQL server 2008


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