1

我有一个带有 Blob 数据类型列的表,它保存个人资料图片(小Drawlable对象)。

通常我会SqLiteDatabse.insert()用对象运行该方法,ContentValues所以所有转换的东西都不会由我实现。

由于我自己的原因,我需要使用"Insert or Replace"Sqlite 查询并使用字符串查询插入配置文件图片的 Drawable,因此我必须实现自己的从byte[]to转换String才能使用 SqLiteDatabse.rawQuery() 方法。

你能提供一种手动而不是使用ContentValue对象的方法吗?

附言

我可以通过创建 2 个查询来解决这个问题:

  1. 检查原始是否存在
  2. 如果不是 - 创建它,如果是 - 更新它

然后我将能够ContentValue方便地使用该对象。但是这样做听起来确实效率低下...

4

1 回答 1

0

要使用 SQL 字符串插入 blob 值,您必须将字节转换为十六进制并使用blob 文字

INSERT INTO MyTable(blob) VALUES(x'123456abcdef')
于 2013-09-09T20:32:24.857 回答