SQLite FTS文档暗示应该使用INSERT、UPDATE、DELETE等方式填充和更新FTS表。
这就是我一直在做的——添加行、删除行等,但最近我注意到,只要我创建了FTS表,它就会自动使用来自源的数据进行填充。我是这样创建的:
CREATE VIRTUAL TABLE notes_fts USING fts4(content="notes", notindexed="id", id, title, body)
如果我向“notes”表添加一行,则它也会自动添加到notes_fts中。我猜这就是虚拟表的作用。
但是,为什么有一个关于填充FTS表的章节呢?如果我删除一行,但它仍在源表中,那么它将重新出现,所以这样做有什么意义呢?
你对此有什么想法吗?FTS是否真的需要被填充?