【发布时间】:2010-12-24 04:22:20
【问题描述】:
我的 iPhone 应用程序中有一个 sqlite 数据库,我通过 Core Data 框架访问它。我正在使用 NSPredicates 来查询数据库。
我正在构建一个搜索功能,该功能需要搜索六个不同的包含文本的 varchar 字段。目前,它非常慢,我需要提高性能,可能在 sqlite 数据库中。最好在所有这些列上创建索引吗?或者构建一个自定义索引表,将这六列扩展为多行,每行包含一个单词和它匹配的 ID,会更好吗?还有其他建议吗?
【问题讨论】:
-
您的问题令人困惑。如果你使用 Core Data,你永远不会直接访问 SQLite 数据库。 “varchar”和“table”之类的词在 Core Data 中没有意义。您应该修改您的问题,以澄清您实际上是在使用 Core Data 还是只是在使用普通的旧 SQLite 数据库。
-
感谢您的评论亚历克斯,我已经更新了我的问题。我从不直接在我的代码中访问 sqlite 数据库,但我可以在 xcode 的背后。例如,我使用 sqlite3 命令行程序为我的数据库植入数据。
标签: iphone sqlite search indexing