0

クラスContactとクラスがありPhoneNumberます。PhoneNumberクラス内には、次の属性があります。

@DatabaseField(foreign = true, columnName = "contact_id")
private Contact mContact;

クラスcontact_id内は次のとおりです。Contact

@DatabaseField(id = true, columnName = "contact_id", allowGeneratedIdInsert = false)
private Integer m_id;

PhoneNumber同じ値でデータベースに新しいものを挿入しようとするとcontact_id、常にconstraint_failedエラーが返されます。

それは起こるべきですか?同じ外部キーで複数の行を挿入することはできませんか? どうすれば修正できますか?

4

1 に答える 1

0

これは起こるはずです。1 対 1 の関係を実装しましたが、1 対多が必要です。クラスでは、電話番号の連絡先は 1 つですが、db は 1 つの電話番号に対して複数の連絡先を保存します。それは意味がありません。したがって、連絡先の連絡先ではなく、リストの連絡先を使用する必要があります。次に、同じ ID を持つ複数の連絡先を挿入すると機能します。

于 2013-02-25T15:07:47.803 に答える