oracle long类型截取,如何从oracle11.2g中提取以LONG/CLOB数据类型存储的图像?
我有一个非常旧的2006年的oracle数据库转储,其中的图像存储在长数据类型中。二进制数据似乎存储在字符类型列中。如何将这些图像导出到.jpeg文件?在我已经将数据库恢复到oracle11.2g。除了图像之外,一切都很正常。我创建了一个新表来使用CLOB而不是LONG数据类型,并将一条记录移动到该表中,因为将表更改为使用CLOB失败,错误为SQL error:ORA-00997:非法使用LONG
我有一个非常旧的2006年的oracle数据库转储,其中的图像存储在长数据类型中。二进制数据似乎存储在字符类型列中。如何将这些图像导出到.jpeg文件?在
我已经将数据库恢复到oracle11.2g。除了图像之外,一切都很正常。我创建了一个新表来使用CLOB而不是LONG数据类型,并将一条记录移动到该表中,因为将表更改为使用CLOB失败,错误为SQL error:ORA-00997:非法使用LONG数据类型。在CREATE TABLE image_table_NEW AS SELECT TO_LOB(sign_area) \
sign_area FROM image_table where rownum=1;
然后用python读取数据
^{pr2}$
一个名为图像.jpeg生成,但不可读。它给出错误“解释JPEG图像文件(不是JPEG文件:以0x3f 0x3f开头)”的错误
上面的代码可以完美地处理BLOB数据类型列。在
编辑:
数据库源:未知字符集
数据库字符集:AL32UTF8
编辑2:(2019年2月17日)
我试着用数据库管理系统_LOB.converttoblob在sqldeveloper中使用此脚本https://oracle-base.com/dba/script?category=miscellaneous&file=clob_to_blob.sql,但始终收到错误“06502”。00000-“PL/SQL:数值或值错误%s”。在
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐



所有评论(0)