1

我想将数据库架构升级到新版本。在我这样做之前,首先我需要从现有数据库中获取一些数据。问题在于,如果我尝试使用这些读取数据库:

DatabaseHelper dbHelper = new DatabaseHelper(context, DB_VERSION);
SQLiteDatabase database = dbHelper.getReadableDatabase();

它可能会被升级(in DatabaseHelper.onUpgrade()),这是一种不受欢迎的行为,因为我只想从旧版本中提取一些记录,而不是升级版本。我想我可以通过在 DB_VERSION 中传递当前版本来做到这一点,但是如何获取数据库的当前版本(请记住,我正在将整个应用程序升级到下一个版本)?

还是有另一种方法可以从数据库中获取一些记录而不会导致升级?

4

1 回答 1

2

直接使用SQLiteDatabase并执行查询获取版本。它不会尝试升级或以其他方式修改它。以只读方式打开以获得额外保护:)

于 2012-07-25T09:20:18.657 回答