これは私のエンティティフィールド宣言です
@DatabaseField( canBeNull = false , unique = true )
private String name;
エンティティの 2 つのインスタンスをまったく同じ名前で作成すると、SQLliteDatabase では問題なく両方を追加できます。私がDDMSを調べてチェックしたので、両方ともデータベースにデフォルトで追加されています。
Unique 制約を強制する他の方法はありますか?
問題にさらに3時間を落としましたが、最終的には解決しました。4.41 にアップグレードしましたが、違いはありませんでした。問題は、データベースが作成された後に制約を追加したことでした.Mathias Linに従って制約が存在するかどうかを確認したときに、それを見ることができませんでした. DBを削除して再作成しました。プレスト、うまくいきます。男子校生の間違い。
マティアス、私はあなたの答えを受け入れますが、コメントのようにはできません。
ORMLite 4.41 以降のバージョンを使用する必要があると思います。私は同じ問題を抱えていました(4.38バージョンで)。バージョン 4.41 では、一意の制約が正常にマップされました。