2

我正在将应用程序从使用普通 SQLite 数据库转换为启用全文搜索的应用程序。它有几个 BLOB 列来存储数字签名之类的东西,显然不需要索引。我读到其他人通过将所有非 TEXT 数据移动到一个单独的非 FTS3 表来解决这个问题,他们在必要时与 FTS3 表进行内部连接,但这是一个非常不雅的解决方案。有没有办法简单地从索引中排除某些列?

4

2 回答 2

0

您可以通过创建连接视图来减少麻烦,然后您可以选择该视图。您仍然可以在源自 fts 表的列上使用 MATCH,并且您不必在每次要查询时都执行该连接。

于 2012-10-26T16:39:57.653 回答
0

这并不优雅。SQL 是关系型的,连接是生活中很自然的一部分。认为它们“不优雅”是导致典型的糟糕数据库设计的原因。

您已经确定您有两种不同类型的数据——您经常需要搜索的文本和您不需要的 blob。将这些存储在两个不同的表中绝对没有错或不雅。

于 2010-11-14T05:19:37.937 回答