oracle long类型截取,如何从oracle11.2g中提取以LONG/CLOB数据类型存储的图像?

我有一个非常旧的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”。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值