要查看数据库中所有文本配置对象以及它们包含的设置的列表,请查询 SYSTEXTCONFIG 系统视图(例如 [SELECT * FROM SYSTEXTCONFIG
])。
您可以通过使用 sa_char_terms 和 sa_nchar_terms 系统过程测试文本配置对象如何将字符串断开成术语。
SQL Anywhere 提供两个分别用于 NCHAR 和非 NCHAR 数据的缺省文本配置对象 default_nchar和 default_char。这些配置在首次尝试创建文本配置对象或文本索引时创建。
下表所示为在安装时 default_char 和 default_nchar 的设置。选择这些设置是因为它们能够最好地适合大多数基于字符的语言。强烈建议不要更改缺省文本配置对象中的设置。
设置 | 安装值 |
---|---|
TERM BREAKER |
0 (GENERIC) |
MINIMUM TERM LENGTH | 1 |
MAXIMUM TERM LENGTH | 20 |
STOPLIST | (空) |
如果删除了某个缺省文本配置对象,则下次创建文本索引或文本配置对象时将自动重新创建该对象。
当数据库服务器创建缺省文本配置对象时,影响如何将日期和时间值转换为字符串的数据库选项将从当前连接保存到文本配置对象。
下表说明了不同文本配置对象的设置、各种设置如何影响索引内容以及如何解释全文查询字符串。所有示例均使用字符串 'I'm not sure I understand'
。
配置设置 | 建立索引的术语 | 查询解释 |
---|---|---|
TERM BREAKER GENERIC MINIMUM TERM LENGTH 1 MAXIMUM TERM LENGTH 20 STOPLIST '' |
|
原始字符串中的 "not" 解释为操作符,而不是单词 "not"。 |
TERM BREAKER GENERIC MINIMUM TERM LENGTH 2 MAXIMUM TERM LENGTH 20 STOPLIST 'not and' |
|
由于 "not" 解释为短语 "i am" 和 "sure" 之间的操作符 (AND NOT),所以会删除 "sure"。由于短语 "i am" 包含过短的术语而被删除,因此 AND NOT 条件的右侧 ("sure") 也被删除。这样将只留下 "understand"。 |
TERM BREAKER NGRAM MAXIMUM TERM LENGTH 3 STOPLIST 'not and' |
|
对于模糊搜索:
|
TERM BREAKER GENERIC MINIMUM TERM LENGTH 1 MAXIMUM TERM LENGTH 20 STOPLIST 'not and' |
|
|
TERM BREAKER NGRAM MAXIMUM TERM LENGTH 20 STOPLIST 'not and' |
不对任何内容建立索引,因为没有长度等于或大于 20 个字符的术语。 这说明了 MAXIMUM TERM LENGTH 对 GENERIC 和 NGRAM 文本索引的不同影响;对于 NGRAM 文本索引,MAXIMUM TERM LENGTH 设置插入到文本索引中的 n 元语法词的长度。 |
搜索将返回空结果集,因为通过查询字符串无法形成 20 个字符的 n 元语法词。 |
下表提供如何解释文本配置对象字符串设置的示例。
“解释的字符串”列中括号内的数字表示为各个术语存储的位置信息。文档中这些数字用于说明目的。实际存储的术语不包括括号内数字。
配置设置 | 字符串 | 解释的字符串 |
---|---|---|
TERM BREAKER GENERIC MINIMUM TERM LENGTH 3 MAXIMUM TERM LENGTH 20 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TERM BREAKER NGRAM MAXIMUM TERM LENGTH 3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
TERM BREAKER NGRAM MAXIMUM TERM LENGTH 3 SKIPPED TOKENS IN TABLE AND IN QUERIES |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
![]() |
使用DocCommentXchange讨论此页。
|
版权 © 2013, SAP 股份公司或其关联公司. - SAP Sybase SQL Anywhere 16.0 |