0
我使用greenDAO 3.1作爲我的一個項目。由於我需要我的ID爲UUID
我決定將其存儲爲ByteArray
。現在的問題是我無法使用update
或updateInTx
方法更新我的實體,我必須使用insertOrReplace
或insertOrReplaceInTx
方法。greenDAO更新和updateInTx不工作
有人可以告訴我發生了什麼,爲什麼我不能使用update
方法更新?
使用insertOrReplace
方法代替update
方法有什麼不足嗎?
這是我Entity
的架構代碼:
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");
這是我的更新代碼:
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