You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQLite FTS5执行MATCH查询无返回结果的原因排查求助

问题根因

你使用的是SQLite FTS的外部内容表模式(通过content=test参数绑定业务表),这种模式的FTS虚拟表不会自动扫描、导入创建之前业务表中已存在的历史数据,仅会自动同步建表之后新增/修改/删除的数据。你是先插入测试数据、后创建FTS虚拟表,因此测试数据没有被写入FTS索引,导致检索无结果。

解决方案

任选一种即可:

  • 方案1:创建FTS表后手动同步全量历史数据到FTS索引
INSERT INTO test_fts (id, title, shortdesc, longdesc) 
SELECT id, title, shortdesc, longdesc FROM test;
  • 方案2:调整操作顺序,先创建业务表、再创建FTS虚拟表、最后插入测试数据,新增数据会自动同步到FTS索引。

注意事项

外部内容模式的FTS表不会自动同步业务表的后续数据变更,你需要额外创建INSERT/UPDATE/DELETE三类触发器,将业务表的数据变动同步到FTS虚拟表,才能保证后续检索结果的准确性。


内容的提问来源于stack exchange,提问作者ifbamoq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 05:54:02