【发布时间】:2009-07-25 09:07:13
【问题描述】:
大家好,这里是最底层的。
我有一个表,由主键(col1)、文本(col2)和文本(col3)组成。基本上是一张地图。该表包含大约 200k 行。检索一行基本上需要大约 1.x 秒(这就是我想要的)。我基本上使用 select * from table where col2 = 'some value'。
我尝试为所有三列、每一列以及 col2 和 col3 创建一个索引,但这并没有改善我的情况。
我在想,这正常吗?我没有遇到任何人抱怨大型表的sqlite性能缓慢的帖子,所以我想知道我做错了什么。
任何帮助将不胜感激。
【问题讨论】:
-
你确定只有一行是结果吗?
-
另外,我建议在运行查询时针对您的应用程序运行 Instruments 或 Shark。我有一个类似的问题,并认为它是 SQLite,但事实证明它是我的代码中导致速度变慢的次优字符串解析方法。
-
是的,我确定只返回一行,我会试试鲨鱼,谢谢你的想法!