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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [SQL Server 2005] Full-Text Index n'indexe rien

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[SQL Server 2005] Full-Text Index n'indexe rien

n°1495239
kramik
Posté le 22-12-2006 à 11:19:12  profilanswer
 

Bonjour tout le monde,
voilà j'ai un soucis.
Je suis sous MS Sql Server 2005 et j'ai besoin de faire un full text index pour mon futur moteur de recherche dans mon application.
J'ai donc cliqué sur la table dont j'ai besoin, j'ai créé le full-text index j'ai pas rencontré de soucis majeure jusque là, à part que je ne vois pas trop ce que je dois mettre à cet endroit (type column):
 
http://img148.imageshack.us/img148/5001/sqllc4.jpg
 
Après, quand je fais une recherche, il ne me met pas d'erreur mais ne me donne pas de résultat non plus.
 
Je n'ai jamais utilisé ce type de fonction donc je ne sais pas trop si je m'y prend bien.
 
Je dois faire une recherche sur un champ image et dedans j'y mets des documents word, txt, ...
 
Merci d'avance


Message édité par kramik le 22-12-2006 à 11:20:06
mood
Publicité
Posté le 22-12-2006 à 11:19:12  profilanswer
 

n°1495249
MagicBuzz
Posté le 22-12-2006 à 11:27:33  profilanswer
 

à priori, t'as pas besoin de mettre quoi que ce soit dans cette colonne si c'est le contenu du fichier.
 
par contre, euh... en fait, tu fais quoi exactement et du veux faire quoi exactement ? comment interrroges-tu ton index ? il est bien rafraîchit ?

n°1495263
kramik
Posté le 22-12-2006 à 11:39:40  profilanswer
 

Ben je fais un SELECT * FROM Document WHERE FREETEXT(SavedFile, 'Monsieur')
Ca ne me retourne rien
Si je ne mets pas de type column, je ne sais pas cliquer sur next... (voir photo)

n°1495265
MagicBuzz
Posté le 22-12-2006 à 11:43:14  profilanswer
 

ok
 
bon, je vais faire des tests, je reviens :)

n°1495266
kramik
Posté le 22-12-2006 à 11:43:46  profilanswer
 

C'est gentil :)

n°1495292
MagicBuzz
Posté le 22-12-2006 à 12:15:56  profilanswer
 

en fait, tu le trouves où ce wizard ? moi je l'ai pas [:magicbuzz]


Message édité par MagicBuzz le 22-12-2006 à 12:16:09
n°1495303
kramik
Posté le 22-12-2006 à 12:24:53  profilanswer
 

Beuh ....
Je fais un clic droit sur la table et j'ai un menu full text index

n°1495307
MagicBuzz
Posté le 22-12-2006 à 12:35:21  profilanswer
 

mon test complet (sans trouver le wizard en question)
 


SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[fichier](
 [id] [numeric](18, 0) IDENTITY(1,1) NOT NULL,
 [nom] [varchar](255) COLLATE French_CI_AS NOT NULL,
 [repertoire] [varchar](255) COLLATE French_CI_AS NOT NULL,
 [auteur] [varchar](50) COLLATE French_CI_AS NOT NULL,
 [documenttype] [varchar](50) COLLATE French_CI_AS NOT NULL,
 [extension] [varchar](50) COLLATE French_CI_AS NOT NULL,
 [contenu] [ntext] COLLATE French_CI_AS NOT NULL,
 CONSTRAINT [PK_fichier] PRIMARY KEY CLUSTERED  
(
 [id] ASC
)WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
 
GO
CREATE FULLTEXT INDEX ON [dbo].[fichier](nom language french, auteur language french, contenu language french)
KEY INDEX [PK_fichier] ON [ft]
WITH CHANGE_TRACKING AUTO


 

Citation :

Avertissement : la table ou la vue indexée 'dbo.fichier' contient des colonnes indexées en texte intégral qui sont de type image, text ou ntext. Le suivi des modifications de texte intégral ne peut pas inclure les opérations WRITETEXT ou UPDATETEXT effectuées sur ces colonnes.


 
Attention donc ! Lancer un recalcul des index par job régulièrement.
 


insert into fichier (nom, repertoire, auteur, documenttype, extension, contenu)
values ('histoire de toto', 'c:\histoires\toto\', 'kramik', 'text/plain', 'txt', 'tu connais l''histoire de toto aux toiletes ? non. moi non plus, il a fermé la porte !');
 
insert into fichier (nom, repertoire, auteur, documenttype, extension, contenu)
values ('cours de sql server', 'c:\cours\sql server\', 'magicbuzz', 'text/plain', 'txt', 'sql serveur c''est bien, mais faut savoir s''sen servir');
 
insert into fichier (nom, repertoire, auteur, documenttype, extension, contenu)
values ('histoire de prof', 'c:\histoires\divers\', 'magicbuzz', 'text/plain', 'txt', 'c''est l''histoire d''un prof qui fait un cours, tu la connais ? non. moi aussi je séchais ce cours là...');
 
select * from fichier where freetext(contenu, 'histoire');
select * from fichier where freetext(auteur, 'magicbuzz');
select * from fichier where freetext(nom, 'cours');


 


 
(1 row(s) affected)
 
(1 row(s) affected)
 
(1 row(s) affected)
id                                      nom                                                                                                                                                                                                                                                             repertoire                                                                                                                                                                                                                                                      auteur                                             documenttype                                       extension                                          contenu
--------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
4                                       histoire de toto                                                                                                                                                                                                                                                c:\histoires\toto\                                                                                                                                                                                                                                              kramik                                             text/plain                                         txt                                                tu connais l'histoire de toto aux toiletes ? non. moi non plus, il a fermé la porte !
6                                       histoire de prof                                                                                                                                                                                                                                                c:\histoires\divers\                                                                                                                                                                                                                                            magicbuzz                                          text/plain                                         txt                                                c'est l'histoire d'un prof qui fait un cours, tu la connais ? non. moi aussi je séchais ce cours là...
 
(2 row(s) affected)
 
id                                      nom                                                                                                                                                                                                                                                             repertoire                                                                                                                                                                                                                                                      auteur                                             documenttype                                       extension                                          contenu
--------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5                                       cours de sql server                                                                                                                                                                                                                                             c:\cours\sql server\                                                                                                                                                                                                                                            magicbuzz                                          text/plain                                         txt                                                sql serveur c'est bien, mais faut savoir s'sen servir
6                                       histoire de prof                                                                                                                                                                                                                                                c:\histoires\divers\                                                                                                                                                                                                                                            magicbuzz                                          text/plain                                         txt                                                c'est l'histoire d'un prof qui fait un cours, tu la connais ? non. moi aussi je séchais ce cours là...
 
(2 row(s) affected)
 
id                                      nom                                                                                                                                                                                                                                                             repertoire                                                                                                                                                                                                                                                      auteur                                             documenttype                                       extension                                          contenu
--------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------- -------------------------------------------------- -------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5                                       cours de sql server                                                                                                                                                                                                                                             c:\cours\sql server\                                                                                                                                                                                                                                            magicbuzz                                          text/plain                                         txt                                                sql serveur c'est bien, mais faut savoir s'sen servir
 
(1 row(s) affected)


 
En tout cas, ça semble marcher correctement chez moi...
 
Au cas où, crée un nouveau catalogue et colle ton index dedans.
CREATE FULLTEXT CATALOG ft AS DEFAULT;

n°1495308
MagicBuzz
Posté le 22-12-2006 à 12:35:43  profilanswer
 

kramik a écrit :

Beuh ....
Je fais un clic droit sur la table et j'ai un menu full text index


le souci, c'est que moi j'ai la version express, donc j'ai pas accès à tout ça :D

n°1495309
kramik
Posté le 22-12-2006 à 12:39:32  profilanswer
 

Merci pour ton test mais tu n'utilises pas de champ image comme moi. Mon texte est stocké dans un champ image, mon fichier plutot

mood
Publicité
Posté le 22-12-2006 à 12:39:32  profilanswer
 

n°1495365
MagicBuzz
Posté le 22-12-2006 à 14:59:38  profilanswer
 

image ou ntext, ça doit revenir au même logiquement.
 
par contre, un image, je pense qu'il faut donc reconstruire à la main l'index régulièrement, car SQL Server ne sais pas lire dedans comme ça, et surtout, il n'ose pas le monitorer en temps réel à cause de la taille possible : jusqu'à 4 Go (ou plus avec 2005, je sais plus) pour un seul champ Image.
 
donc faut que tu schedule un rebuild de l'index. consulte la doc sur le sujet, la syntaxe est tout bête.
 
y'a deux type de reconstruction. différencielle : t'as qu'à la lancer toutes les heures, et complète : toute les nuit, ou un soir de la semaine si ça prends vraiment beaucoup de temps


Message édité par MagicBuzz le 22-12-2006 à 15:00:48
n°1495657
kramik
Posté le 23-12-2006 à 14:31:31  profilanswer
 

Ok merci c'est bon à savoir.
Mais comment cela se fait-il qu'il ne trouve rien même quand je construit l'index à la main ?
Et quel est ce champ que je dois lui spécifier quand je crée mon full-text index, comme sur la photo postée plus haut ?

n°1495679
MagicBuzz
Posté le 23-12-2006 à 17:38:16  profilanswer
 

aucune idée, moi je n'ai pas ça wizard...
 
à mon avis, tu te plante de truc en fait : j'ai l'impression que ton wizard premet d'utiliser SQL Server pour rechercher des fichiers sur le disque dur et référencés dans cette table.
 
rien de sur, je n'ai jamais eu le temps de me plonger vraiment dans SQL Server 2005, et pour les fulltext index la version 2000 était infiniment plus simple (mais plus limitée aussi ;))


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

  [SQL Server 2005] Full-Text Index n'indexe rien

 

Sujets relatifs
JAVA et TEXT : help !!![SQL Server 2005] Procédure stockée dynamique ?
[SQL Developper][SQL/Access] problème pour une requête en apparence assez simple
[PHP] créer une possibilté d'identification SQL/PHP[PL/SQL] Aide sur un like
[PHP/MySQL] compter nombre requetes SQL ?[SQL] Petit coup de main dans une requête svp!
Plus de sujets relatifs à : [SQL Server 2005] Full-Text Index n'indexe rien


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