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