ホームページ  >  記事  >  データベース  >  数据库升级

数据库升级

WBOY
WBOYオリジナル
2016-06-07 14:59:521021ブラウズ

升级 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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。