Bonjour,
J'ai un catalogue FULLTEXT qui référence 2 colonnes de la même table. Tout fonctionne bien sauf certains mots où on dirait que l'indexation ampute le terme dès qu'il y a un accent. Du coup, une requête (FREETEXT, LIKE...) sur le terme complet ne retourne rien, mais les requêtes sur la partie non-amputée marchent.
Ex :
select mycolumn from mytable where Id = 2028
mycolumn
------------------------------
<P>Anaïs et Alizé</P>
select * from sys.dm_fts_index_keywords_by_document(DB_ID(),Object_iD('mytable'))where display_term like 'Anaïs%' or display_term like 'Alizé%'
keyword display_term column_id document_id occurrence_count
--------------------------------------------------------------------------------------------------
(no results)
select * from sys.dm_fts_index_keywords_by_document(DB_ID(),Object_iD('mytable'))where display_term like 'Ana%' or display_term like 'Aliz%'
keyword display_term column_id document_id occurrence_count
-------------------------------------------------------------------------------------------------------------------------
0x0061006C0069007A aliz 22 20259 1
<== mot amputé ici
0x0061006E0061 ana 22 20259 1
<== et ici
J'ai essayé de repeupler l'index manuellement et de le rebuilder, sans succès.
Bizarrement, j'ai une autre base sur un serveur de recette avec exactement les mêmes données et le même catalogue FULLTEXT et les termes complets apparaissent bien comme référencés par l'index :
select * from sys.dm_fts_index_keywords_by_document(DB_ID(),Object_iD('mytable'))where display_term like 'Anaïs%' or display_term like 'Alizé%'
keyword display_term column_id document_id occurrence_count
---------------------------------------------------------------------------------------------------------------------
0x0061006C0069007A0065
alize 22 20259 1
0x0061006E006100690073
anais 22 20259 1
Quelques détails sur mon environnement :
- Microsoft SQL Server 2008 (SP3) - 10.0.5828.0 (X64) Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
- Server Collation : SQL_Latin1_General_CP1_CI_AI
- Catalogue en Accent Sensitive = false,
- Langage Word Breaker : French pour les 2 colonnes
- Catalog track changes : Automatic
- Catalog Stoplist : SYSTEM
Quelqu'un a-t-il déjà rencontré ce cas ?
Merci d'avance pour votre aide.
Partager