Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Obter BLOB da coluna BFILE no Oracle


No Oracle, o BFILE coluna é um localizador ou referência para o arquivo externo. Ele contém as informações do diretório e do nome do arquivo. Aqui estou dando um exemplo de código PL/SQL para obter BLOB do BFILE coluna localizadora no Oracle.

Exemplo de procedimento PL/SQL - Obter BLOB da coluna BFILE

Declare
  l_bfile  BFILE;
  l_blob   BLOB;

  l_dest_offset INTEGER := 1;
  l_src_offset  INTEGER := 1;
BEGIN

  Select your_bfile_column into l_bfile from yourTable
    where yourCondition;
  DBMS_LOB.fileopen(l_bfile, DBMS_LOB.file_readonly);
  
  DBMS_LOB.loadblobfromfile (
    dest_lob    => l_blob,
    src_bfile   => l_bfile,
    amount      => DBMS_LOB.lobmaxsize,
    dest_offset => l_dest_offset,
    src_offset  => l_src_offset);
  DBMS_LOB.fileclose(l_bfile);

  COMMIT;

END;

A variável l_blob está contendo o BLOB extraído do BFILE coluna