问题描述
我尝试使用 Octave 6.2.0 和 mex-sqlite3-master 包从数据库文件中读取 BLOB 数据。
我能够从我的数据库文件中选择和读取任何其他数据。对于包含 BLOB 数据的列,它给了我以下内容:
octave> x=sqlite3('file.db','SELECT column FROM list'); 错误:sqlite3:不支持的列类型
octave> x=sqlite3('file.db','SELECT column FROM list WHERE column=CAST(column AS TEXT)'); 没有给出错误,但是 x 的尺寸为 1x0。
BLOB 数据包含十六进制数。我很高兴将它们作为字符串(并进一步工作,没有问题)。
如何以可处理的格式提取 BLOB 数据?
感谢您的提示!
解决方法
非常感谢您的回答!我尝试了“从 bl 中选择 CAST(column AS TEXT);”暗示。它创建了一个预期大小的数组,但单元格为空。
,我想你可能想要:
SELECT hex(column) FROM list
而不是对文本进行 CAST。