首页 > android数据库怎么删除列

android数据库怎么删除列

最近遇上难题了,应用要进行升级,不过新版的数据库比原版数据库少了两个字段,直接使用网上重命名复制法,但却出错了

table Article  has 10 columns but 12 values were supplied (code 1)

好像是说数据库有10列,但却有12个值,于是想到先删除原版数据库中多出的两个列,不过又报错了

android.database.sqlite.SQLiteException: near "DROP": syntax error (code 1): , while compiling...
>

后来查了,说安卓数据库不支持删除字段,这下彻底没辙了。
请问这种情况怎么对数据库进行保留数据的升级呢?


alter table tableName drop column columnName 。正常的SQL操作啊


反对以上两个答案,我刚遇到这个问题。sqlite的alter中并不支持drop。
也就是说不能够直接删除列。
如果一定要实现这个功能,暂时只能是新建一个表,然后将之前表内的东西迁移过去,然后将旧表删除,再把新表名改为之前旧表的名字。
我了解到得就是这个方法。。。希望能有更好的方法。。。


没学过数据库啊哥们。

【热门文章】
【热门文章】