February 27, 2011 at 3:56 pm
Dear Sql community,
I need to fulltext product codes that contain the forward slash "/". for example: A/AN/B12/Y(02)
the Sql server word breakers split that product code in many tokens during the indexing, by doing that, small tokens composed of one character get ignored as noise words. the outcome, the search is useless because the result is completely not the "expected" one.
you can try how the sql server breaks the words for english and neutral language:
SELECT * FROM sys.dm_fts_parser (' "A/AN/B12/Y(02)" ', 1033, 0, 0)
SELECT * FROM sys.dm_fts_parser (' "A/AN/B12/Y(02)" ', 1, 0, 0)
see attachments for results.
But, the real problem is not the noise words because this is just the effect. the real cause is to be able to modify and/or change the behavior of the word breakers in sql server to support some special characters like forward slashes or any other social character that should not break a word in some cases. in my case A/AN/B12/Y(02) need to be considered as an integral one word.
What is the solution to this issue?
Is there a way to disable completely the work breakers feature on a full indexed column?
NB: I am using sql server 2008 R2 with CU5.
December 20, 2011 at 12:43 am
Navigate to Registry values
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRoot>\MSSearch\Language\eng
and
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceRoot>\MSSearch\Language\enu
clear value for WBreakerClass.
Sql server consider A/AN/B12/Y(02) as one word.
above both path i have taken by assuming that you are using English language as word breaker.
Viewing 2 posts - 1 through 1 (of 1 total)
You must be logged in to reply to this topic. Login to reply