Oracle 将blob映像转换为plsql中的PUBLIC.ORDIMAGE

Oracle 将blob映像转换为plsql中的PUBLIC.ORDIMAGE,oracle,plsql,oracle-sqldeveloper,oracle19c,Oracle,Plsql,Oracle Sqldeveloper,Oracle19c,当我尝试在plsql中将blob映像转换为PUBLIC.ORDIMAGE时,我得到一个错误 ORA-06512 ORDSYS.ORDMAGE 我还尝试使用一个函数来调整blob的大小,但出现以下错误: create or replace FUNCTION resize_img (p_ID varchar) RETURN BLOB IS vImageData BLOB; vSizedImage BLOB; BEGIN select blob_img into vI

当我尝试在plsql中将blob映像转换为PUBLIC.ORDIMAGE时,我得到一个错误

ORA-06512 ORDSYS.ORDMAGE

我还尝试使用一个函数来调整blob的大小,但出现以下错误:

create or replace FUNCTION resize_img (p_ID  varchar)
   RETURN BLOB
IS
   vImageData     BLOB;
   vSizedImage BLOB;

BEGIN
  select blob_img into vImageData  from my_table where ID = p_ID;
  DBMS_Lob.createTemporary(vSizedImage, FALSE, DBMS_LOB.CALL);
  ORDSYS.OrdImage.processCopy(vImageData, 'maxScale=75 75', vSizedImage);
  return vSizedImage;

END resize_img;
调用函数时,出现错误:

ORA-06510:PL/SQL:未处理的用户定义异常
ORA-06512:在“ORDSYS.ORDIMAGE”第456行
ORA-06512:在“MYSCHEMA.RESIZE_IMG”第14行
651000000-“PL/SQL:未处理的用户定义异常”
*原因:PL/SQL代码引发了用户定义的异常,但未处理。
*操作:修复导致异常的问题或为此情况编写异常处理程序。或者,您可能需要联系您的应用程序管理员或DBA


任何解决方案?

或图像
是Oracle多媒体的一部分

作为图像处理和转换的替代方案,Oracle建议您将多媒体内容存储在SecureFiles LOB中,并使用第三方产品,如Piction。ORDIM组件仍保留在注册表中,并且仍然具有有效状态。Oracle多媒体对象和包仍保留在数据库中但是,这些对象和包不再运行,如果试图使用它们,会引发异常。Oracle Locator不受Oracle Multimedia取消支持的影响


看起来这个函数来了。如果是这样,那么值得记住的是,问题是针对Oracle 11gR2的。我看到你用
[oracle10g]
[oracle11g]
标记了你的问题。您真正使用的是哪一个?@APC Tnx用于重播,我使用Oracle Database 19c,但此标记在此处不可见。为了便于将来参考,最好在问题正文中说明您使用的版本,而不是使用误导性标记。Tnx用于回答,您有任何简单的示例如何使用SecureFiles LOB和Piction吗?或用于调整水滴图像大小的其他解决方案。
create or replace FUNCTION resize_img (p_ID  varchar)
   RETURN BLOB
IS
   vImageData     BLOB;
   vSizedImage BLOB;

BEGIN
  select blob_img into vImageData  from my_table where ID = p_ID;
  DBMS_Lob.createTemporary(vSizedImage, FALSE, DBMS_LOB.CALL);
  ORDSYS.OrdImage.processCopy(vImageData, 'maxScale=75 75', vSizedImage);
  return vSizedImage;

END resize_img;