由于在用户日常使用的过程中,出现过用低版本apk强制覆盖高版本apk的情况,所以最近在代码中重写了SQLiteOpenHelper类的onDowngrade方法,用来对数据库进行降级处理。但是在执行drop删除表字段语句时,会报下面的错误:
drop表字段的sql语句如下所示:
db.execSQL("ALTER TABLE " + Contract.Tables.FAVORITE + " DROP COLUMN " + Contract.FavColumns.FAV_REMARK);
本文介绍了在SQLite数据库中处理版本降级的问题。当尝试直接使用DROP COLUMN语句删除表中的某个字段时,由于SQLite不支持该语法,解决方案是创建临时表存储数据,删除旧表后重新命名临时表。
由于在用户日常使用的过程中,出现过用低版本apk强制覆盖高版本apk的情况,所以最近在代码中重写了SQLiteOpenHelper类的onDowngrade方法,用来对数据库进行降级处理。但是在执行drop删除表字段语句时,会报下面的错误:
drop表字段的sql语句如下所示:
db.execSQL("ALTER TABLE " + Contract.Tables.FAVORITE + " DROP COLUMN " + Contract.FavColumns.FAV_REMARK);
2万+

被折叠的 条评论
为什么被折叠?