greenDAO更新并插入不唯一的SQLite错误

时间:2014-04-29 20:38:38

标签: android greendao

我在我正在编写的Android应用中使用greenDA作为ORM。

我生成了所有DAO文件,现在正在我的数据库中插入,更新和删除。

我特定的一点,我不确定数据库中是否存在实体,我想更新实体(如果存在)或插入实体(如果实体)没有。

(另外,我对2列有一个唯一约束,为简单起见,将它们称为ColumnA和ColumnB)。

任何人都知道如何执行此类任务?每次我尝试插入数据库时​​,我都会收到一个COLUMNS ARE NOT UNIQUE SqLite错误,它告诉我我没有更新而是插入其唯一性已存在于数据库中的记录。

谢谢! 最好的祝福, 克里斯托弗史蒂文

1 个答案:

答案 0 :(得分:1)

对此有用(因为greenDao此时不支持此开箱即用)是取这两个(或三个或任意数量的数据库列)并在其中实现/生成哈希方法建模并将其作为主键。