1. 程式人生 > >GreenDao主鍵自增踩的坑

GreenDao主鍵自增踩的坑

Android使用GreenDao來管理資料庫很是方便,最近使用GreenDao設定主鍵id自增,踩到個坑,在此記錄。

bean類宣告主鍵自增:

@Entity
public class Person {

    @Id(autoincrement = true)
    private long id;
    private String name;
    private String age;

結果插入資料時,報如下錯誤:

android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed: PERSON._id (code 1555)

說是主鍵必須是唯一的,主鍵不是自增的嗎?怎麼會不唯一呢?原來原因是主鍵自增型別必須是Long(注意是大寫的L),而不是小子的long型別。修改後再執行,ok了。