【问题标题】:Full text search query not returning result in SQL Server全文搜索查询未在 SQL Server 中返回结果
【发布时间】:2012-12-14 05:29:48
【问题描述】:

我为我的表创建了目录和全文索引:

create fulltext catalog testsearch

select * from INFORMATION_SCHEMA.TABLE_CONSTRAINTS

CREATE FULLTEXT INDEX ON test_master

(name)
KEY INDEX PK_test_master
ON testsearch

但是当我尝试检索值时

select * from test_master where contains(name, 'product')

查询只返回表“test_master”的列,但没有填充任何行。我也没有收到任何错误。请帮助我

【问题讨论】:

  • 您确定该表有任何包含单词product 的记录吗?请记住,它只会匹配整个单词,而不是单词的一部分...
  • 可能是您的全文索引尚未填充。转到 SSMS > 右键单击​​您的表格 > 完整索引.. > 开始填充
  • 是的,我的表中有一行“名称”列的值为“产品”,我已尝试填充我的全文索引,但它仍然无法正常工作..

标签: sql-server full-text-search


【解决方案1】:

根据您的表大小,索引可能需要一些时间。在运行查询之前,您可能需要稍等片刻。

我倾向于像这样编写人口脚本(必须承认我不知道它可以通过用户界面完成......)

ALTER FULLTEXT INDEX ON test_master START FULL POPULATION

之后我也使用手动设置更改跟踪自动,虽然这是默认行为(不记得为什么。我一定遇到过一些问题......)

ALTER FULLTEXT INDEX ON test_master SET CHANGE_TRACKING AUTO

【讨论】:

    猜你喜欢
    • 2020-05-20
    • 2019-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多