Ich benutze greenDAO 3.1 für eines meiner Projekte. Da ich meine ID UUID
brauchte, habe ich mich entschieden, sie als ByteArray
zu speichern. Nun ist das Problem, ich kann meine Entitäten nicht mit update
oder updateInTx
Methode aktualisieren und ich muss insertOrReplace
oder insertOrReplaceInTx
Methode verwenden.greenDAO update und updateInTx funktioniert nicht
Kann mir jemand sagen, was los ist und warum kann ich nicht mit update
Methoden aktualisieren?
Gibt es irgendwelche Nachteile der Verwendung von insertOrReplace
Methoden anstelle von update
Methoden?
Das ist mein Entity
‚s Schema Code:
Entity book = schema.addEntity("Book");
book.addByteArrayProperty("id").columnName("_id").primaryKey();
book.addStringProperty("title");
book.addByteProperty("edition");
book.addStringProperty("authors");
book.addStringProperty("desc");
book.addStringProperty("pic");
Und hier ist mein Update-Code:
BookDao bookDao = daoSession.getBookDao();
List<Book> books = bookDao.loadAll();
for (Book book : books)
book.setDesc("It doesn't really matter!");
bookDao.updateInTx(books); //This isn't working