2010-10-04 140 views
1

我有一个关于何时使用现有数据库分发应用程序的问题。Android SQLite数据库问题

现在我创建了一个基本的应用程序,根据我的理解,.db文件应该位于资产文件夹中,当用户第一次运行应用程序时,它应该检查数据库是否存在于\ data \数据\文件夹,如果它不在那里,它应该复制它...正确?

我的问题是,有关更新?当用户将更新下载到所述应用程序时,我们需要将更多行插入到几个特定的​​表格中(我认为总共大约有8个表格)。这应如何处理?数据库是否应该被彻底覆盖,或者是否存在复制差异的方法?

感谢您的帮助!对不起,如果它听起来有点混乱。

回答

1

这可以由SQLiteOpenHelper.onUpgrade为您处理。

如果您想查看实例,请阅读Notepad tutoria

+0

该死的,那是一个快速的回应!非常感谢! – dagonal 2010-10-04 17:29:32

+0

我现在正在工作,所以我无法检查......但应用程序如何知道数据库是什么版本?数据库中没有字段可以更改... – dagonal 2010-10-04 17:40:54

+0

数据库版本存储为附注值:例如,在sqlite3提示符中键入“PRAGMA user_version”以查看数据库的当前版本。 – Veeti 2010-10-04 18:35:10

0

我有我的应用程序分发的一些数据。我不是发布二进制数据库,而是发布应用中包含的静态JSON文件,并在第一次运行时将数据加载到空白数据库中。这样我可以更轻松地更新存储在数据库中的初始值。