配置全文语言组件

从 SQL Server 2008 开始,全文搜索支持大约 50 种不同语言,例如英语、西班牙语、中文、日语、阿拉伯语、孟加拉语和印地语。有关支持的全文语言的完整列表,请参阅 sys.fulltext_languages (Transact-SQL)。全文索引中包含的每一列与一个 Microsoft Windows 区域设置标识符 (LCID) 相关联,每个区域设置标识符等同于全文搜索支持的一种语言。例如,LCID 1033 等于美国英语,LCID 2057 等于英国英语。对于每种支持的全文语言,SQL Server 提供语言组件以支持对以该语言存储的全文数据进行索引和查询。

特定于语言的组件包括断字符和词干分析器。断字符根据给定语言的词汇规则查找词边界(“断字”)。每个断字符与一个词干分析器相关联,该词干分析器组合了同一种语言的动词。有关详细信息,请参阅断字符和词干分析器

此外,从 SQL Server 2008 开始,还提供系统非索引字表,该非索引字表包含一组基本非索引字(也称为干扰词)。“非索引字”是对搜索没有任何帮助并且被全文查询忽略的词。例如,在英语区域设置中,诸如“a”、“and”、“is”和“the”之类的词都被视为非索引字。通常情况下,需要配置一个或多个同义词库文件和非索引字表。有关详细信息,请参阅非索引字和非索引字表

SQL Server 会安装一个全局同义词库文件,并且还为每种全文语言安装一个同义词库文件。安装的同义词库文件实际上是空的,不过可以编辑它们以便为特定语言或商业应用场景定义同义词。通过开发针对全文数据定制的同义词库,您可以有效地扩大对这些数据的全文查询的范围。有关详细信息,请参阅同义词库配置

对 varbinary、varbinary(max)、image 或 xml 数据类型列中的文档进行索引时,需要使用筛选器来执行额外的处理工作。此筛选器必须特定于文档类型(.doc、.pdf、.xls、.xml 等)。有关详细信息,请参阅全文搜索筛选器

注意注意

断字符(和词干分析器)以及筛选器在筛选器后台程序宿主进程 (fdhost.exe) 中运行。有关此进程的信息,请参阅全文搜索的体系结构