在我的andoid应用程序的数据库目录(/data/data/com.me.myApp/databases)中,对于我创建的每个sqlite数据库,都有一个相同名称的相应数据库,并在其名称后附加了“-journal” .
例如:myDatabase,myDatabase-journal,myOtherDatabase.db,myOtherDatabase.db-journal
这是什么?
和,
如果我为我的应用程序提供预填充数据库(根据:http://www.reigndesign.com/blog/using-your-own-sqlite-database-in-android-applications/),我是否还需要包含这些数据库?
1 回答
这样的
-journal
文件不需要(也不应该)分发 .这是因为各种日志文件表示SQLite使用的临时数据(ref . SQLite's Use Of Temporary Disk Files) . 特别是
-journal
文件是回滚日志 .通常,这些
-journal
文件应仅在存在打开的SQLite数据库时存在 - 或者更确切地说,是一个正在运行的事务 - 但可以通过PRAGMA journal_mode进行控制 . 使用默认的pragma设置,将删除-journal
文件 .当数据库未打开且所有日志已被SQLite本身删除(或清除)时,请确保仅复制实际的数据库文件;这意味着所有事务都已完成且数据库处于一致状态 .