当前位置:Gxlcms > mysql > 数据库升级

数据库升级

时间:2021-07-01 10:21:17 帮助过:21人阅读

升级 app 的版本时,我们有时候希望可以把原数据库中的资料也保留下来,那么这个时候我们就需要用到数据库的升级。 在 android 中 SQLiteOpenHelper 中定义了 onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) 函数来进行一些对数据库的升级操

升级app的版本时,我们有时候希望可以把原数据库中的资料也保留下来,那么这个时候我们就需要用到数据库的升级。

androidSQLiteOpenHelper中定义了onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)函数来进行一些对数据库的升级操作处理。不需要做一些数据库的操作,在这个函数不需要写任何代码。

在编写数据库升级的时候,我们除了要把数据库的版本号+1以外,还需要在onUpgrade()中写升级数据库所发生的一些变化。比如,数据库升级会发生一些表结构的变化或者是数据的变化。我在这里先说一下,更新表的一些步骤:

1. 先把原表改名,可以任意名字,但是为了方便,我们加temp前缀或者后缀。

2. 然后创建新的表,我们实际要用到升级版本的表。

3. 把原表的数据按照新表的规定,插入到新表中。

4. 把原表删除。

这里会有个小问题,如果原表不需要发生变化要怎么办?那就不需要去动这个表了。参考源码见:https://github.com/arjinmc/UpgradeDatabaseDemo

人气教程排行