SQLite升级与降级

SQLite升级与降级,第1张

概述> SQLiteException: no such table(GreenDao),SQLite创建表与更新表与版本号的联系?? SQLite版本号升级时,会执行DatabaseOpenHelper的onCreate()?? App版本更新时对SQLite数据库表的修改问题- http://blog.csdn.net/u013067184/article/details/48031081 SQL > sqliteException: no such table(GreenDao),sqlite创建表与更新表与版本号的联系??
sqlite版本号升级时,会执行DatabaSEOpenHelper的onCreate()??

App版本更新时对sqlite数据库表的修改问题- http://blog.csdn.net/u013067184/article/details/48031081
sqliteException: table TAREAS has no column - https://stackoverflow.com/questions/36308339/greendao-@R_404_1298@-sqlite-sqliteexception-table-tareas-has-no-column-na , https://stackoverflow.com/questions/934237/sqlite-exception-no-such-table-error

版本更新时,sqlite表结构发生变化了该怎样处理,最有效的方案就是先删除老的数据,重新调用onCreate(db);
@OverrIDe
public voID onUpgrade(sqliteDatabase db,int oldVersion,int newVersion) {
context.deleteDatabase(DB_name);
onCreate(db);
}


GreenDaoUpgradeHelper- https://github.com/yuweiguocn/GreenDaoUpgradeHelper

AndroID sqlite数据库版本升级原理解析- http://www.cnblogs.com/liqw/p/4264925.html
App版本更新时对sqlite数据库表的修改问题- http://blog.csdn.net/u013067184/article/details/48031081
AndroID sqlite数据库的数据升级与降级- http://www.cnblogs.com/zhaoyucong/p/6118226.html 主要的三个方法: onCreate()该方法是在你没有安装过(第一次运行)的时候执行,这时可以在这个函数中完成初始的数据表的创建 onUpgrade()该方法是在你安装过的情况下,对数据继续更新的时候执行,这时可以在这个函数完成数据库版本升级带来的旧版本的兼容问题,以及数据迁移问题。 onDowngrade()该方法是在现逆向降级(如应用由版本号4降级安装版本号为3的包)时必须重写的方法,如果应用降级覆盖安装时没有重写该方法则会崩溃。 onCreate:调用时机是用户首次安装应用后启动,或是清除App数据库文件后启动。这时可以在这个函数中完成初始的数据表的创建。 onUpgrade:调用时机是用户在做应用更新,覆盖安装后启动,如果新版本中数据库版本号要比旧版本中的数据库版本号高则会调用。这时可以在这个函数完成数据库版本升级带来的旧版本的兼容问题,以及数据迁移问题。 因为有的用户手机上本来就有第一版本的APP,所以在App升级到第二版本时会执行onUpgrade(),不会执行onCreate()。 总结

以上是内存溢出为你收集整理的SQLite升级与降级全部内容,希望文章能够帮你解决SQLite升级与降级所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1163445.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存