This issue can be resolved using the XML word breaker that ships with Windows operating system when SQL Server is running on either Windows 7 or Windows Server 2008 R2 (version shipped with Windows use different file name - xmlfilter.dll). If you are running SQL Server on a lower version of Windows, you first need to upgrade to these operating systems and then use the following procedure to resolve this issue.
Procedure to resolve the problem on SQL Servers running on Windows Server 2008 R2 and Windows 7 environments:
Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
322756 (http://support.microsoft.com/kb/322756/ ) How to back up and restore the registry in Windows
Note: You need to restart SQL Server Service after going through the following procedure for the changes to come into effect.
- Navigate to the following registry hive on your SQL Server machine and save it as SQLMSSearch.reg.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<instance>\MSSearch\CLSID
Note: Replace the "<instance>" in the path above with the relevant instance ID of SQL Server 2008/SQL Server 2008 R2.
E.g. "MSQL10.MSSQLSERVER" for a default instance or "MSSQL10.KATMAI" for a named instance "Katmai"
For further information refer to the following topic in SQL Server Books Online:
File Locations for Default and Named Instances of SQL Server (http://msdn.microsoft.com/en-us/library/ms143547.aspx) - Edit SQLMSSearch.reg file with notepad and replace all occurrences of xmlfilt.dll
by C:\\Windows\\system32\\xmlfilter.dll and then save the changes.
Notes:
- This assumes your windows folder is located at C:\Windows.
- You need to enter each backslash in the new path twice! - Click the file SQLMSSearch.reg to import the content into the registry.
- Execute the following T-SQL commands to enable the new setting in SQL Server
exec sp_fulltext_service 'load_os_resources', 1
exec sp_fulltext_service 'verify_signature ', 0 exec sp_fulltext_service 'update_languages'exec sp_fulltext_service 'restart_all_fdhosts'
- Check the availability of the new settings with this T-SQL command:
EXEC sp_help_fulltext_system_components 'fullpath','c:\windows\system32\xmlfilter.dll'
Notes: You need to adapt the above command to suit the correct Windows system path on your system. Also ensure that all the languages (respectively their lcid), that should show the new behaviour are listed in the column "componentname" in the output