我有两个不同的环境,一个 LIVE 和一个 STAGING 环境。
这些正在运行 SQL Server 2016 网络版,但 SQL 主机本身的版本和一些全文组件(即分词器 (MsWb7.dll))的版本略有不同
LIVE: SQL: 13.0.1728.2, Word breaker: 15.0.4569.1503
STAGING: SQL: 13.0.4466.4, Word breaker: 14.0.4763.1000
我使用以下方法获取断词器版本:
EXEC sp_help_fulltext_system_components 'wordbreaker';
我习惯使用sys.dm_fts_parser
下划线来打断单词:
SELECT *
FROM sys.dm_fts_parser('xxxx_yyyy', 1033, 0, 0)
WHERE1033
是英语的 LCID。
以下是现场直播的结果:
keyword group_id phrase_id occurrence special_term display_term expansion_type source_term
---------------------------------------------------------------------------------------------------------------------------------------
0x006200750069006C005F006E003000350030 1 0 1 Exact Match xxxx_yyyy 0 xxxx_yyyy
0x006200750069006C 1 0 1 Exact Match xxxx 0 xxxx_yyyy
0x006E003000350030 1 0 2 Exact Match yyyy 0 xxxx_yyyy
分期结果:
keyword group_id phrase_id occurrence special_term display_term expansion_type source_term
---------------------------------------------------------------------------------------------------------------------------------------
0x006200750069006C005F006E003000350030 1 0 1 Exact Match xxxx_yyyy
我看不到如何控制分词器使用哪些字符,这似乎是硬编码的,这表明升级分词器组件是前进的方向,但我找不到任何有关如何做到这一点的信息。
还有其他人经历过这个吗?