Oi Pessoal,
Já tentaram usando CAST

Grato

************************************************
Paulo Planez Diniz
Business & IT Consultant
Phone ……..: 55 67 9216 3477 (GMT-04: 00)
Skype …: paulo.planez
E-Mail …….: pauloplanez@yahoo.com
               paulo.planez@gmail.com

Em segunda-feira, 27 de abril de 2020 13:21:13 AMT, Thiago Souza souzatg@gmail.com <> escreveu:


Oi Denilson, tudo bem?


Tive de fazer isto recentemente para um projeto de Nota Fiscal Eletronica, para recuperar o XML da Nota Fiscal do Mastersaf que está em BLOB em outro banco de  dados. O PLSQL não permite que você faça um SELECT …. INTO em um campo BLOB utilizando uma tabela remota pois dá erro de ORA-22992. porém ele  permite uma inserção direta com comando INSERT..SELECT. 
Então o workaround que utilizamos foi criar uma GLOBAL TEMPORARY TABLE com este campo BLOB, fazer um INSERT..SELECT nela buscando via DBLINK, e depois já dentro do ambiente destino, fazer o SELECT..INTO na variável local, tipo abaixo:

CREATE GLOBAL TEMPORARY TABLE xx_temp_lob (templob BLOB);
/* Dentro da procedure PLSQL, fazer a sequencia abaixo */
INSERT INTO xx_temp_lob 
SELECT coluna_blob FROM xyz@dblink;

SELECT templob INTO l_variavelLob FROM xx_temp_lob;


Espero que ajude.
Abraços!



On Mon, 27 Apr 2020 at 14:10, FelixDenilson felix.denilson@gmail.com <> wrote:

 

Boa tarde Grupo.

Alguém teria um exemplo de como recuperar um campo BLOB de uma tabela que está em outro ambiente utilizando para isso um DBLink?
Estando no banco Oracle, preciso ler um campo IMAGEM da tabela xyz@dblink (ambiente APEX)  e guardar no RI. 

Versão R11.

Obrigado,
Denilson



Deixe um comentário