SQL Server 2005全文检索技术
2007-12-25 22:44
543 查看
3.4 引入政府行业或者企业自身的的数据字典
为了让SQL Server 2005的全文检索更适于本政府行业或者企业使用,还需要把自己特色的缩略语、书面替换语进行配置。但是,在此之前,还要把主要使用的语言的相关信息进行配置,主要是配置相关的断字符和干扰字。
SQL Server 2005的断字符配置是根据语言分析规则而异,可以为每个全文索引列指定不同的语言。每种语言的断字符能够使得为该语言生成的词更加准确。如果断字符用于整个语系而不是特定的子语言,将使用该语系中的主要语言。例如,使用法语断字符来处理加拿大法语文本。如果某一特定语言没有可用的断字符,将使用非特定语言断字符。使用非特定语言断字符时,词将在非特定语言字符(如空格和标点符号)处断开。
SQL Server 2005 包含 23 种区域设置的断字符。通过参阅 sys.fulltext_languages 就可以获得所有支持语言的列表。
表2:SQL Server 2005支持的23种区域语言
注:所查询的全文索引列的语言决定了对 CONTAINS、FREETEXT、CONTAINSTABLE 和 FREETEXTTABLE 等全文查询函数的参数执行的语言分析。如果未指定列的语言,默认值是配置选项 default full-text language 的值。对于SQL Server 2005的本地版本,SQL Server 安装程序将把 default full-text language 选项设置为操作系统使用的语言;对于 SQL Server 的非本地化版本,default full-text language 选项为“英语”。
在明确了区域语言之后,还需要进行本政府行业或者企业的定制化操作:
(1)在$<SQL Server Install Path>\Microsoft SQL Server\MSSQL.1\MSSQL\FTDATA\中配置对应的干扰词,可以在对应的noise***.文件中增加或者修改干扰词。
例如,对以一家IT公司而言,查询的时候就直接说服务器的名字,而把 “服务器”作为干扰词,查询某个网站的时候也就直接称呼网站的名字,把“网站”也可以作为干扰词。
(2)更为重要的是配置自己的同义词和替换词,同样在$<SQL Server Install Path>\Microsoft SQL Server\MSSQL.1\MSSQL\FTDATA\中配置对应区域语言的ts***.xml文件即可。
例如,把tsCHS.xml修改为如下内容:
对于同义词在检索的时候,如果用户的查询关键字是“北京站”,那么记录内容为“北京火车站”和“北京东站”的信息也会被查询出来;对于替换词,如果用户查找的是“NT5”或“W2K”的时候,只有包括“Windows 2000”的内容会被提取出来,而 包括“NT5”或“W2K”自身的内容反而不会被提取出来。
1
为了让SQL Server 2005的全文检索更适于本政府行业或者企业使用,还需要把自己特色的缩略语、书面替换语进行配置。但是,在此之前,还要把主要使用的语言的相关信息进行配置,主要是配置相关的断字符和干扰字。
SQL Server 2005的断字符配置是根据语言分析规则而异,可以为每个全文索引列指定不同的语言。每种语言的断字符能够使得为该语言生成的词更加准确。如果断字符用于整个语系而不是特定的子语言,将使用该语系中的主要语言。例如,使用法语断字符来处理加拿大法语文本。如果某一特定语言没有可用的断字符,将使用非特定语言断字符。使用非特定语言断字符时,词将在非特定语言字符(如空格和标点符号)处断开。
SQL Server 2005 包含 23 种区域设置的断字符。通过参阅 sys.fulltext_languages 就可以获得所有支持语言的列表。
地区编号 | 语言 |
2052 | Simplified Chinese |
1028 | Traditional Chinese |
1031 | German |
2057 | British English |
1033 | English |
3082 | Spanish |
1036 | French |
1040 | Italian |
1041 | Japanese |
1042 | Korean |
0 | Neutral |
1043 | Dutch |
1053 | Swedish |
1054 | Thai |
3076 | Chinese (Hong Kong SAR, PRC) |
5124 | Chinese (Macau SAR) |
4100 | Chinese (Singapore) |
注:所查询的全文索引列的语言决定了对 CONTAINS、FREETEXT、CONTAINSTABLE 和 FREETEXTTABLE 等全文查询函数的参数执行的语言分析。如果未指定列的语言,默认值是配置选项 default full-text language 的值。对于SQL Server 2005的本地版本,SQL Server 安装程序将把 default full-text language 选项设置为操作系统使用的语言;对于 SQL Server 的非本地化版本,default full-text language 选项为“英语”。
在明确了区域语言之后,还需要进行本政府行业或者企业的定制化操作:
(1)在$<SQL Server Install Path>\Microsoft SQL Server\MSSQL.1\MSSQL\FTDATA\中配置对应的干扰词,可以在对应的noise***.文件中增加或者修改干扰词。
例如,对以一家IT公司而言,查询的时候就直接说服务器的名字,而把 “服务器”作为干扰词,查询某个网站的时候也就直接称呼网站的名字,把“网站”也可以作为干扰词。
(2)更为重要的是配置自己的同义词和替换词,同样在$<SQL Server Install Path>\Microsoft SQL Server\MSSQL.1\MSSQL\FTDATA\中配置对应区域语言的ts***.xml文件即可。
例如,把tsCHS.xml修改为如下内容:
<?xml version="1.0" encoding="utf-8"?> <XML ID="Microsoft Search Thesaurus"> <thesaurus xmlns="x-schema:tsSchema.xml"> <diacritics_sensitive>0</diacritics_sensitive> <expansion> <sub>Internet Explorer</sub> <sub>IE</sub> <sub>IE5</sub> </expansion> <replacement> <pat>NT5</pat> <pat>W2K</pat> <sub>Windows 2000</sub> </replacement> <expansion> <sub>北京站</sub> <sub>北京火车站</sub> <sub>北京东站</sub> </expansion> </thesaurus> </XML>
对于同义词在检索的时候,如果用户的查询关键字是“北京站”,那么记录内容为“北京火车站”和“北京东站”的信息也会被查询出来;对于替换词,如果用户查找的是“NT5”或“W2K”的时候,只有包括“Windows 2000”的内容会被提取出来,而 包括“NT5”或“W2K”自身的内容反而不会被提取出来。
1
相关文章推荐
- SQL Server 2005全文检索技术在网站上的应用实录
- SQL Server 2005全文检索技术在网站上的应用实录 索引
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术在网站上的应用实录(一)
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术在网站上的应用实录(二)
- SQL Server 2005全文检索技术在网站上的应用实录
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术在网站上的应用实录
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术在网站上的应用实录
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术
- SQL Server 2005全文检索技术
- 【ZT】SQL Server 2005全文检索技术在网站上的应用实录
- SQL Server 2005全文检索技术