原文地址:http://blog.csdn.net/chthq/article/details/7834526
今天在android中将sqlite的数据库文件生成在SD卡上的过程中,发现生成的.db文件的旁边

生成了一个大小为0的与数据库文件同名的.db-journal文件,不明白此文件的用途,于是

google了sqlite的官方文档,发现该文件的用途如下:

该文件是sqlite的一个临时的日志文件,主要用于sqlite事务回滚机制,在事务开始时产生,

在事务结束时删除;当程序发生崩溃或者系统断电时该文件将留在磁盘上,以便下次程序运行

时进行事务回滚。

但是我创建数据库时将事务结束了,同时程序也没有崩溃,为什么还是会在磁盘上产生

.db-journal文件呢?

深入研究,发现这是sqlite生成日志文件的不同模式造成的,在android采用的这种模式下,

.db-journal文件是永久的留在磁盘上不会被自动清除的,如果没有发生事务回滚那么.db-journal

文件的大小为0,这样就避免了每次生成和删除.db-journal文件的开销。

到此,所有的疑惑解开了。

更多相关文章

  1. Android中的自定义Adapter(继承自BaseAdapter)——与系统Adapter的
  2. 获取Android崩溃crash信息并写入日志
  3. Android(安卓)NDK编程之Android.mk和Application.mk
  4. 逆向手机内核,添加调试支持及绕过反调试
  5. android 自定义权限 permission
  6. Android(安卓)破解apk文件
  7. 如何用Android(安卓)源码生成APK签名文件
  8. Android中的文件存储数据方式 .
  9. Android(安卓)Studio 引入编写好的.so库

随机推荐

  1. Android(安卓)chrisbanes-PhotoView 使用
  2. Android内存管理的原理--进程管理
  3. Android系统框架总结(好文)
  4. 基于android的远程视频监控系统(已开放源
  5. Android拨号器的实现
  6. 谷歌宣布Android设备累计激活量突破10亿
  7. 如何搭建android的开发环境 虚拟机和ubun
  8. [置顶] 一步一步学android OpenGL ES2.0
  9. Android Market正式更名Google Play Stor
  10. Android通讯-Socket(TCP/IP)