Обновление GreenDAO и вставка не уникальной ошибки SQLite

Я использую greenDAO для ORM в приложении для Android, которое я пишу.

Я сгенерировал все файлы DAO и сейчас нахожусь в точке вставки, обновления и удаления в моей базе данных.

Я нахожусь в определенном месте, где я не уверен, существует ли сущность в базе данных или нет, и я хотел бы обновить сущность, если она существует, или вставить сущность, если ее нет.

(Также у меня есть уникальное ограничение на 2 столбца, для простоты назовите их ColumnA и ColumnB).

Кто-нибудь знает, как выполнить этот тип задачи? Каждый раз, когда я пытаюсь вставить в базу данных, я получаю сообщение COLUMNS ARE NOT UNIQUE SqLite, которое говорит мне, что я не обновляю, а скорее вставляю запись, уникальность которой уже существует в базе данных.

Спасибо! С наилучшими пожеланиями, Кристофер Стивен

1 ответ

Что может быть полезно для этого (так как greenDao не поддерживает это прямо из коробки), это взять эти два (или три или любое количество столбцов базы данных) и реализовать / сгенерировать там хеш-метод в модели и сделать что первичный ключ.

Другие вопросы по тегам