SQL 2005 Full Text Search / Contains Formsof Thesaurus not working

  • Hi,

    I can't seem to use a modified Thesaurus xml file on SQL 2005. I've modified the tsENG.xml, tsGLOBAL.xml, and the tsENU.xml files (all within the data folder - MSSQL.1\MSSQL\FTData) and then restarted the SQL Server Fulltext Search service. The following query isn't returning the expected results:

    SELECT LookupString

    FROM tblLookup

    WHERE CONTAINS(LookupString, ' FORMSOF (THESAURUS, SYS) ' );

    All 3 xml's have:

    <expansion>

    <sub>SYS</sub>

    <sub>System</sub>

    <sub>Systems</sub>

    </expansion>

    I've also tried changing the following in the xml file from:

    <diacritics_sensitive>0</diacritics_sensitive>

    to:

    <diacritics = false/>

    this hasn't helped either.

    In my SQL example above i'd like to return the column "LookupString", which contains either SYS or System or Systems, but it's only returning the specified one in the FORMSOF (THESAURUS, SYS) bit.

    Any help would be appreciated.

  • Deleting the Full-Text Index and then defining it again using the wizard seemed to fix it.

  • Just for anyone else looking into this - I had a very similar issue and there was an annoying but simple solution. It turned out the default Thesaurus XML files that I was editing had some commentary text which was wrapped around any changes I made - hence in SQL the changes were not processed as anything other than comments - so the interchangeable synonyms I defined were not recognised. That might be another thing to check if you are experiencing this issue.

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply