安卓开发者使用本地SQLite须知

由于开发需要,最近在学习安卓本地数据库的使用。一开始想使用LitePal框架实现,经过一番配置之后,一个简单的Demo跑了起来,使用开发者助手查看数据库,db文件成功创建,但是打开db文件却只有一个默认表,并没有我想创建的表,我以为是LitePal 没有配置好,反复仔细检查了好几次,最终也没有找到问题的所在,我只好老老实实地使用安卓的SQLiteOpenHelper了,经过较复杂的一番配置,新的Demo跑了起来,非常意外的是结果和LitePal的Demo一样,只有库没有表。我打开应用的databases文件夹发现除了db文件外还有后缀为db-shm和db-wal的文件,一开始以为这两个是日志之类的文件就忽略了,又是一番修改,使用开发者助手查看数据库,结果依旧如初。万分无奈,我有下载了一个数据库查看软件,把三个文件复制出来打开,发现我要的表和Demo的测试数据都在。经过百度得知,db-shm和db-wal是SQLite 3.7的新特性,在修改数据库时,做出了修改会临时存储在这两个文件中,经过一段时间后修改的内容才会被写入db文件。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容