0
は、私がモデルOrmlite画像の更新問題
@DatabaseTable(tableName = DatabaseConstants.TABLE_ARTICLE)
public class ArticleModel {
@DatabaseField(generatedId = true, columnName = DatabaseConstants.ARTICLE_ID)
public int id;
@DatabaseField(columnName = DatabaseConstants.ARTICLE_NAME)
public String name = "";
@DatabaseField(columnName = DatabaseConstants.ARTICLE_IMAGE_URL)
public String imageUrl = "";
@DatabaseField(columnName = DatabaseConstants.ARTICLE_IMAGE,dataType= DataType.BYTE_ARRAY)
public byte[] image;
を以下している画像を更新することが可能である:
ContentValues cv = new ContentValues();
cv.put(DatabaseConstants.ARTICLE_IMAGE, UtilBitmap.bitmapToByteArray(bitmap));
SQLiteDatabase sqLiteDatabase = this.baseHelper.getWritableDatabase();
sqLiteDatabase.update(DatabaseConstants.TABLE_ARTICLE, cv,
DatabaseConstants.ARTICLE_MOBILE_IMAGE_URL + "= ?", new String[]{url});
をそれにormlite方法があるさ次のコード以外のバイト配列に更新:
updateBuilder.updateColumnValue(DatabaseConstants.ARTICLE_IMAGE,imageBytes);
updateBuilder.where().eq(DatabaseConstants.ARTICLE_MOBILE_IMAGE_URL, url);
問題は、イメージを更新することが可能です.U前者の方法で歌いますが、後者の方法を使用しない場合、つまり後者の方法を使用する場合、イメージはデータベースに正しく保存されません。私は画像が格納されているかどうかを確認するためにsqliteviewerを使い、後者の方法では失敗します。 "ormlite"を使ってバイト配列(イメージ)を更新する方が良いでしょうか?
私の回答は助けになりましたか?私は+1していただければ幸いです。 – Gray