Добрый день. Я уже проверил другой вопрос по той же теме. но я не могу понять, почему мое приложение выбрасывает ошибку несоответствия внешнего ключа.Почему это порождает несоответствие внешнего ключа SQL
в моей таблице пациентов, я объявил 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;
поэтому проблема возникает, когда я обновить значение столбца patientUuid
db.execSQL("UPDATE Appointment SET clinicUuid = '289f0c31-a8e3-4906-8ab2-c39e2dad368e'
WHERE localUuid ='a1584d2c-50df-46d6-86f7-6b753697116a'");
большое спасибо и извините за плохой английский
Я предлагаю вам попробовать запустить приложение на эмуляторе. Просто потому, что вы можете найти базу данных и проверить ее структуру и таблицы. В колонке может возникнуть ошибка типографии или даже вы не создали таблицу. Эта ошибка может означать [следующая] (http://stackoverflow.com/a/5208331/3128927) – FiN
Почему вы ссылаетесь на столбец 'localUuid' в таблице« Назначение »? Существует ли этот столбец? –
Показать фактическую структуру базы данных. По-видимому, у вас нет первичного ключа. –