Matlab破坏了MySQL的blob?

时间:2017-01-31 18:00:55

标签: mysql matlab blob

我在MySQL中存储了几个blob(5.7.16,在Linux上运行)。

当我使用Matlab(2016b,MacOS,mysql-connector-java-5.1.40)检索这些blob时,某些字节已损坏,使原始blob无法使用。

attached picture包含一个示例。左边的文件是损坏的,从Matlab保存。右边是原始的,从MySQL Workbench保存。

这是我与数据库建立连接的方式:

conn = database('dbname','username','password','Vendor','MySQL','Server','localhost');

这是我进行SQL查询的方式:

curs = exec(conn, 'SELECT FileContent FROM Table WHERE Id = 1;');

......这就是我保存blob的方法:

file = fopen(filename, 'wb');
fwrite(file, curs.Data{1}, 'uint8');

1 个答案:

答案 0 :(得分:0)

调试显示curs.Data{1}的类型为int8

保存时使用

fwrite(file, curs.Data{1}, 'int8');