我想将模型字段类型从double更改为BigDecimal,将String更改为BigDecimal(参见下文)。
旧模型:
@DatabaseField
private double val1;
@DatabaseField
private String val2;
@DatabaseField
private double val3;
新模式:
@DatabaseField
private BigDecimal val1;
@DatabaseField
private BigDecimal val2;
@DatabaseField
private BigDecimal val3;
我应该在onUpgrade方法中进行任何更改并增加数据库版本吗?我应该选择哪种方法来纠正它?
例如:
答案 0 :(得分:1)
根据ORMLite data type docs,double
和BigDecimal
不受相同的ORMLite数据类型管理。 String
和BigDecimal
也是如此。所以,是的,您必须进行更新并增加版本。
在onUpdate
中你可以:
val1_aux
重命名为val1
我认为不需要创建另一个中间列。