Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment convertir CLOB en BLOB dans Oracle ?

Un code comme celui-ci effectuera un recodage minimal :

create or replace function clob2blob(AClob CLOB) return BLOB is
  Result BLOB;
  o1 integer;
  o2 integer;
  c integer;
  w integer;
begin
  o1 := 1;
  o2 := 1;
  c := 0;
  w := 0;
  DBMS_LOB.CreateTemporary(Result, true);
  DBMS_LOB.ConvertToBlob(Result, AClob, length(AClob), o1, o2, 0, c, w);
  return(Result);
end clob2blob;
/

Mais CLOB ne peut pas contenir correctement toutes les données d'image sans aucun encodage comme Base64