如何确保ORMLite数据库中的唯一行,Android?

Fel*_*lus 1 java sqlite android ormlite

我的简单应用程序使用Jsoup解析站点,将数据发送到OrmLite数据库,然后在ListView中显示此数据.OrmLite数据库中的表具有简单的结构:自动生成的int主键_id和一些String字段(itemId,itemText,itemDate,itemRating).

我逐个添加项目(这是出于教育目的).如果我经常点击"添加"按钮,我会得到重复的条目.有没有办法保证只有唯一的项目(具有唯一的String itemId)将存储在数据库中?

flo*_*ski 6

在场景后面,它是一个SQLite数据库,因此您应该能够为UNIQUE列添加约束.

看一下文档,你可以UNIQUE像这样添加约束:

@DatabaseField(columnName = "itemId", unique = true)
private String itemId;
Run Code Online (Sandbox Code Playgroud)

  • 谢谢,它似乎工作.没有更多重复.虽然我现在得到一个例外,但我会试着弄明白该怎么做............引起:android.database.sqlite.SQLiteConstraintException:column quoteId不是唯一的(代码19) (2认同)