Android 2.3 上的 Android sqlite 索引

标签 android sqlite indexing android-2.2-froyo android-2.3-gingerbread

我有两台设备:搭载 Android 2.2 Froyo 的 HTC Desire 和搭载 Android 2.3 Gingerbread 的 HTC Evo 3D。

我的sql请求:

SELECT DISTINCT Album.titre, Serie.nbAlbum 
  FROM Serie, Album 
  WHERE Serie.titre=Album.serieTitre AND Album.shz=1 

使用非索引数据库:

htc evo 3d : Everything works fine, the query runs in ~1 second.
htc desire : This is much longer! about 30 - 50 seconds.

所以,我尝试用

来索引我的表:
CREATE INDEX IDX_ALBUM_SHZ on ALBUM (shz)
CREATE INDEX IDX_ALBUM_SERIETITRE on ALBUM(serieTitre)

但结果却相反!

HTC Desire : Really fast, ~1 second.
HTC Evo 3d : Very slow, more than 20 seconds

你知道发生了什么吗?
froyo 和 gingerbread 在如何管理 sqlite 方面有重大变化吗?

如何解决这个问题?

最佳答案

这很可能与这些手机使用的文件系统有关。据我所知,大多数三星手机都使用 RFS 文件系统,它在磁盘访问时间性能方面微不足道。而 HTC 手机大多使用 ext3(据我所知)。我想不出你的情况有任何其他区别。

关于Android 2.3 上的 Android sqlite 索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9825287/

相关文章:

mysql - 使用哈希时获取行的单个示例的有效方法

vb.net - 从数据库中删除时 SQL 逻辑错误或缺少数据库没有这样的表

java - SQLite 如何 - 在 JOIN 中按值求和

java - 适用于 Android 的 SQLite 分组项目和可扩展 ListView

arrays - Matlab 不使用循环创建新的值数组

java - 如何清除未使用的 Glide 缓存?

java - 如何使用 Eclipse 创建 Java 库?

Android 启动服务 onStart 和另一个问题

android - 在gui之后在Android中加载代码

mysql - 大多数网站使用什么MYSQL表存储引擎?一个支持 FULLTEXT 索引和 RELATIONSHIPS 的索引?