我正在创建一个数据库助手类,其中一些方法仅查询数据库,而另一些则写入它。 我的理解是这两种方法都会打开数据库,并让程序只读或向数据库写入数据。 对于查询语句,是否值得仅使用getReadableDatabase(),或者两种方法之间的性能差异非常小?谢谢你的时间。
除非磁盘已满或存在某些权限错误强制以只读模式打开数据库,否则它们将返回相同的对象。不过名称有点令人困惑 :)
一般来说,您应该将对这些方法的任何调用放在UI线程之外。两者都可能需要很长时间才能返回。
如果您不打算写入数据库,则只需使用getReadableDatabase
,因为它将有助于提高您代码的清晰度和意图。
更多信息请点击此处。
getWritableDataBase
,我是否可以执行 select 语句? - Sourav Kanta以只读方式打开数据库应该会稍微提高性能,因为锁定开销会更低。