更新现有数据库中的Blob数据

时间:2019-10-09 08:20:40

标签: python sqlite blob

我想更新现有数据库中的字段blob,但这会引发一个错误。

execute("UPDATE table_name SET blob_column={} WHERE var1=1 AND var2=2".format(b"\x01\x02")))

我想用\ x01 \ x02代替blob_column上的实际数据。发生此错误:

error : near "'\x01\x02'": syntax error (UPDATE table_name SET blob_column=b'\x01\x02' WHERE var1=1 AND var2=2)

找到了这个主题,但不了解:syntax to UPDATE a BLOB field in an existing SQLite record?

1 个答案:

答案 0 :(得分:0)

根据

,blob值的语法应为x'0102'而不是b'\x01\x02'
UPDATE table_name SET blob_column= x'0102' WHERE var1=1 AND var2=2

值为十六进制,例如x'aaff'

每对字符都是一个字节,因此x'0102'是长度为两个字节的Blob。