0
おはよう。私はすでに同じ話題に関する他の質問をチェックしました。私のアプリが外部キーの不一致エラーを投げている理由を理解できないようです。なぜSQLの外部キーの不一致がスローされる
私のPatientテーブルで、私は私の主キーとしてlocalUuidを宣言しました。私の予定表で
@Column(isPrimaryKey = true, isUnique = true, isNotNullable = true)
@Expose
@SerializedName("local_uuid")
protected String localUuid;
、私はpatientUuidに外部キー
@NOrm.Column(isForeignKey = true, referenceTable = "Patient", referenceColumn = "localUuid", isNotNullable = true)
@Expose
@SerializedName("patient_Uuid")
protected String patientUuid;
を宣言したので、問題は、私は更新時に列の値が
db.execSQL("UPDATE Appointment SET clinicUuid = '289f0c31-a8e3-4906-8ab2-c39e2dad368e'
WHERE localUuid ='a1584d2c-50df-46d6-86f7-6b753697116a'");
多くの感謝と申し訳ありませんがpatientUuidています悪い英語
あなたのアプリをエミュレータで実行しようとお勧めします。あなたがデータベースを見つけて、その構造とテーブルを確認できるからです。 列に入力ミスがあったり、テーブルを作成しなかったりする可能性があります。 そのエラーは[次の]意味することができます(http://stackoverflow.com/a/5208331/3128927) – FiN
なぜあなたは 'Appointment'テーブルの' localUuid'カラムを参照していますか?この列は存在しますか? –
実際のデータベース構造を表示します。どうやら、あなたは主キーを持っていません。 –