我有一个应用程序,允许用户在数据库中添加一些数据。
如果我想通过对数据库进行一些更改来对应用程序进行更新,则更新后将重新创建数据库,因此,用户将丢失他/她在应用程序上创建的所有数据。
在重新创建数据库之前,有什么方法可以“保留”用户数据?
谢谢 !
public abstract void onUpgrade (SQLiteDatabase db, int oldVersion, int newVersion)
当需要升级数据库时,使用“调用”。实现应使用此方法删除表,添加表或执行其他任何升级到新架构版本所需的操作。
可以在这里找到SQLite ALTER TABLE文档。如果添加新列,则可以使用ALTER TABLE将它们插入活动表中。如果重命名或删除列,则可以使用ALTER TABLE重命名旧表,然后创建新表,然后使用旧表的内容填充新表。
此方法在事务内执行。如果引发异常,则所有更改将自动回滚。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句