0

我正在开发一个使用资产文件夹中发送的数据库的 Android 应用程序。定期,我需要更新数据库中的一个表,但不删除其他表的内容(因为它们有来自用户的数据)。

我已经读过增加数据库的版本将升级整个数据库,但这意味着重置每个表。

有什么办法可以做到这一点?

4

2 回答 2

0

您可以在内部处理它,我不确定是什么触发了您需要更新表格、应用程序的初始设置或稍后的处理。这个过程有点初级。

假设表 A 有数据,您想向其中添加“col_new”。

放置表温度

ALTER TABLE A 重命名为 Temp

删除表 A

使用表 A 的所有列以及“col_new”创建表 A。

查询表 Temp 并将其插入到 A 表中,如下所示

insert into A (name, phonenumber) select name, address from Temp

检查两个表的计数是否匹配。尽可能设置 col_new。

这可能不是你想听到的,但我希望它会有所帮助。

于 2013-07-30T19:35:38.653 回答
0

我终于完成了CommonsWare的建议:分离数据库。我改变了我的设计,所以现在我有两个不同的数据库(一个包含应用程序信息,另一个包含用户信息)。有了这个,我可以在不删除用户信息的情况下更新应用程序数据库。

于 2013-08-06T10:42:42.593 回答