Leia arquivos BLOB , MEMO, BASE64 no Fluig.
Em caso de dúvidas entre em contato.
Este artigo tem o objetivo de auxiliá-lo na consulta de arquivos, armazenados em colunas do banco de dados do tipo BLOB, MEMO e BASE64 .
Por enquanto testei essa possibilidade apenas em conexões que forame realizadas através da configuração de acesso Externo, disponível nesta documentação documentação . Este tipo de conexão consiste em configurar um arquivo XML, e o dataset irá ler este arquivo e carregar essa configuração para ser acessado pelo driver jdbc.
O dataset abaixo, disponível no site da TOTVS, utiliza o driver JDBC para conectar ao banco de dados através da configuração previamente realizada.
Se observarmos a linha 12 podemos ver que a variável ‘rs’ recebe o metodo executeQuery da classe Statement.
Ao conferir esta documentação da Oracle, podemos ver que o método executeQuery tem como retorno uma classe chamada ResultSet.
Bastou verificar agora os métodos disponíveis na documentação da classe ResultSet .
Neste teste foi utilizado o método getBytes para acessar uma coluna do tipo BLOB que armazenava uma string BASE64.
var arquivo_bytes = rs.getBytes(rs.getMetaData().getColumnName(w));
resultado = new java.lang.String(rs, "UTF-8");
Upload Automático no Fluig.
Para realizar o upload automático em processos no fluig veja este post.
Blob , Memo, Base64..
BLOB significa Binary Large Object. Podemos entender que o BLOB é um campo que aceita uma grande quantidade de caracteres, utilizado para gravar arquivos digitais dentro de colunas no banco de dados.
Supondo que você precise armazenar um arquivo, ou até mesmo o hash base64 que representa este arquivo em um banco de dados, você provavelmente vai querer usar este tipo de dado.
Referências.
https://stackoverflow.com/questions/29887351/java-the-method-encodebase64
https://docs.oracle.com/javase/7/docs/api/java/sql/ResultSetMetaData.html
https://docs.oracle.com/javase/7/docs/api/java/lang/String.html