我找不到Android在SQLite数据库文件中存储数据库版本的位置。数据库版本到底存储在哪里?
发布于 2010-09-15 02:52:57
您可以使用android.database.sqlite.SQLiteDatabase.getVersion()
读取版本。
在内部,此方法执行SQL语句"PRAGMA user_version
“。这是我从Android source code得到的。
在数据库文件中,版本存储在数据库文件的database header中的字节偏移量60处,在字段'user cookie‘中。
发布于 2015-08-04 07:59:11
如果有人正在寻找要从文件中读取版本的java代码:
private static int getDbVersionFromFile(File file) throws Exception
{
RandomAccessFile fp = new RandomAccessFile(file,"r");
fp.seek(60);
byte[] buff = new byte[4];
fp.read(buff, 0, 4);
return ByteBuffer.wrap(buff).getInt();
}
https://stackoverflow.com/questions/3707797
复制相似问题