【问题标题】:How to change word-break characters in SQL Server Full-Text indexing如何更改 SQL Server 全文索引中的断字字符
【发布时间】:2010-12-05 06:56:59
【问题描述】:

默认情况下,当告诉 SQL Server(当前使用 2008)对一列进行全文索引时,它会处理诸如“@”和“.”之类的字符。作为工作中断者,类似于“”。

我想将破坏工作的字符限制为“”,以便将“joe.bloggs@somewhere.com”视为一个单词。

似乎可以针对索引列选择“断字语言” - 也许我需要设置自定义语言?

有人知道我该怎么做吗?

【问题讨论】:

标签: sql-server sql-server-2008 full-text-search


【解决方案1】:

为了使您的断字器与 SQL Server 一起运行,您必须禁用签名验证并将您的 COM CLSID 添加到注册表中。有关更多信息,请查看此帖子:http://blogs.msdn.com/shajan/default.aspx 这对我帮助很大!但是我从来没有设法创建自己的语言,所以我只是劫持了一个已经存在的语言。

【讨论】:

    【解决方案2】:

    根据TechNet关于SQL 2008全文搜索的文章:

    知名的已发布接口 提供全文框架 引擎可扩展性。更多 信息,请参阅 Microsoft 开发人员网络 (MSDN) 主题 IFilter、IWordBreaker 和 IStemmer。

    因此,至少根据本文,您可以实现自定义 IWordBreaker 实现(有关更多信息,请参阅http://www.siao2.com/2005/03/14/395199.aspx)并让 SQL 使用它。

    到目前为止,我还没有发现如何将您的自定义分词器插入 SQL 本身——如何告诉 SQL 使用您的分词器。抱歉,答案不完整...希望我至少为您提供了部分解决方案。

    【讨论】:

      猜你喜欢
      • 2011-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多