CAMPO BLOB ( APENAS NO SELECT )

Dúvidas, dicas e truques de SQL, Select, Update, Delete, cláusulas, operações com joins, Funções em SQLs, etc
  

Mensagemem Seg, 07 Jun 2010 9:20 am

alguém conhece uma maneira de visualizar um campo BLOB no select ?

Já tentei:

select dbms_lob.substr(campo_blob,100,1) from tabela;

O resultado é: 5445737465. O valor do campo é "TESTE".

No aguardo.
hervalg
Localização: Salto - SP

Mensagemem Ter, 08 Jun 2010 12:05 am

Como Blob é um campo com dados binários, a conversão não é automática. O Substr que você usou é um programa sobrecarregado, e foi usada a versão para BLOB, que utiliza offset e comprimento em bytes, não em caracteres.

Você poderia fazer isso com a procedure DBMS_LOB.CONVERTTOCLOB:
http://download.oracle.com/docs/cd/E118 ... m#i1020356

Se mostrar um hexadecimal ou algo assim, provavelmente o BLOB foi gravado com outro character set, que é um dos parâmetros da procedure. Teria que verificar onde gravou qual foi o character set usado.
fsitja
Localização: Gaúcho no Rio de Janeiro - RJ

"The scars exist to remind us that the past was real"
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html

OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist

Mensagemem Ter, 08 Jun 2010 8:25 am

boa dia amigo.

também estava testando, alterando o campo para CLOB, aí sim o comando que utilizei funciona.

valeu pela dica do DBMS_LOB.CONVERTTOCLOB
hervalg
Localização: Salto - SP


  • Veja também
    Respostas
    ExibiÇões
    Última mensagem


        Voltar para SQL

        Quem está online

        Usuários navegando neste fórum: Nenhum usuário registrado e 7 visitantes