0
你好,我正在使用ORMLite 4.33。ormlite DataType.ENUM_STRING让我“对数据持久存储器无效”
我有一个实体类试图destroyTable时给我一个错误:
E/AndroidRuntime(6715): java.lang.IllegalArgumentException: Field class
java.lang.String for field FieldType:name=udm,class=Prodotti is not valid
for data persister [email protected]
这里是类
@DatabaseTable(tableName = "Prodotti")
public class Prodotti extends BaseDaoEnabled{
....
@DatabaseField(dataType = DataType.ENUM_STRING,
columnDefinition="VARCHAR(100) DEFAULT NULL")
//also tried @DatabaseField(dataType = DataType.ENUM_STRING)
private String udm;
...
}
我拼命地跑DatabaseConfigUtil更新ormlite_config.txt,现在我认为唯一的解决办法是将字段的类型改为字符串
所以使用这段代码在数据库中,OurEnum变成varchar而不是enum了? – max4ever
正如答案所述,'OurEnum'字段将作为数据库中的'VARCHAR'持久保存在数据库中。 ORMLite不支持仅由几种数据库类型支持的数据库枚举。 – Gray