OK, mas isso é pra casos que extrapolem limites do cliente : *** SE 
*** vc está usando sqlplus, como iirc vc disse em outra msg, 
ABSOLUTAMENTE vc não precisa fazer conversão ALGUMA, o sqlplus 8i é 
TOTALMENTE capz de exibir CLOBs até o limite definido pelo longsize :


[EMAIL PROTECTED]:SQL>create table TBL_EQUIP_TIPOS(ID    number, 
  2                               TIPO  char(1), 
  3                               TEXTO_PADRAO CLOB
  4                               );

Tabela criada.

[EMAIL PROTECTED]:SQL>insert into TBL_EQUIP_TIPOS values(1, 'A', 'Este é o 
texto do tipo A id=1 !!!');

1 linha criada.

[EMAIL PROTECTED]:SQL>commit;

Validação completa.

[EMAIL PROTECTED]:SQL>select * from TBL_EQUIP_TIPOS;

                ID T TEXTO_PADRAO
------------------ - -------------------------------------------------
-------------------------------
                 1 A Este é o texto do tipo A id=1 !!!


[EMAIL PROTECTED]:SQL>insert into TBL_EQUIP_TIPOS values(2, 'B', lpad('X', 
4000, '*'));

1 linha criada.

[EMAIL PROTECTED]:SQL>

[EMAIL PROTECTED]:SQL>BEGIN
  2  insert into TBL_EQUIP_TIPOS values(3, 'C', lpad('Y', 
32767, '$'));
  3  END;
  4  /

Procedimento PL/SQL concluído com sucesso.

[EMAIL PROTECTED]:SQL>select * from TBL_EQUIP_TIPOS;

                ID T TEXTO_PADRAO
------------------ - -------------------------------------------------
-----------------
                 1 A Este é o texto do tipo A id=1 !!!
                 2 B 
******************************************************************
                 3 C 
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

[EMAIL PROTECTED]:SQL>set lines 80

[EMAIL PROTECTED]:SQL>set long 33000  <<== este é o cara pra ajuste do 
plus, é documentado no sqlplus user´s guide...

-- agora farei um SELECT simples, sem aquele TO_CHAR absurdo (só por 
causa do espaço aqui do Fórum, vou EDITAR alguns dos "*" e dos "$" , 
mas eles apareceram direitinho aqui na tela) :

[EMAIL PROTECTED]:SQL>select * from TBL_EQUIP_TIPOS;

                ID T
------------------ -
TEXTO_PADRAO
----------------------------------------------------------------------
----------
                 1 A
Este é o texto do tipo A id=1 !!!

                 2 B
**********************************************************************
**********
**********************************************************************
**********
.....
**********************************************************************
**********
**********************************************************************
*********X

                 3 C
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$
........
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$Y


[EMAIL PROTECTED]:SQL>

[]s

 Chiappa
 
--- Em oracle_br@yahoogrupos.com.br, Thiago Menon <[EMAIL PROTECTED]> 
escreveu
>
> Cara muito obrigado pela ajuda.
> 
> Vou procurar sobre dbms_lob.
> 
> valeu
> Thiago
> 
> jlchiappa escreveu:
> 
> >Colega, manipulações de datatypes realmente muitas vezes MUDAM 
mesmo 
> >em cada versão de banco, e/ou novos datatypes são adicionados, é 
> >natural... No caso em questão, é documentado que quando vc chama 
uma 
> >função com um argumento de datatype não-esperado há conversão 
> >implícita (manual "Oracle8i SQL Reference", cap. 4 - Functions, 
> >), e o mesmo manual cap. 2 - Basic Elements of Oracle SQL, na 
> >tabela "Table 2-6 SQL Functions for Datatype Conversion" mostra 
que 
> >** NÃO HÁ ** conversão implícita entre CHAR e LOB.
> > Já no banco 9i, o manual "Oracle9i SQL Reference" no cap. 6, 
itens  
> >Functions, nos diz :
> >
> >-----------------------------------------------------------
> >SQL Functions
> > Note: 
> >When you apply SQL functions to LOB columns, Oracle creates 
temporary 
> >LOBs during SQL and PL/SQL processing. You should ensure that 
> >temporary tablespace quota is sufficient for storing these 
temporary 
> >LOBs for your application.
> >
> >==> OU seja, é um comportamento novo/melhoria DO 9i, sim ??? 
Aliás, é 
> >EXATAMENTE por isso que é MUITO MUITO recomendável que vc 
desenvolva 
> >e tenha os seus bancos de teste EXATAMENTE NA MESMA versão...
> >
> > A solução 8i é usar as built-ins PL/SQL específicas para LOB no 
8i, 
> >são as da package DBMS_LOB, vc acha ref sobre elas tanto no manual 
de 
> >Concepts quanto no PL/SQL user´s Guide.
> >
> >[]s
> >
> > Chiappa
> >
> >--- Em oracle_br@yahoogrupos.com.br, Thiago Menon <[EMAIL PROTECTED]> 
> >escreveu
> >  
> >
> >>Estou com o seguinte problema.
> >>
> >>    
> >>
> >>>Qdo eu faço uma query em uma tabela com um campo que tem o tipo 
= 
> >>>      
> >>>
> >CLOB 
> >  
> >
> >>>eu utilizo TO_CHAR(campo), para recuperar o valor.
> >>>
> >>>Isso funciona lega no banco com versão 9i mas meu servidor está 
> >>>      
> >>>
> >rodando 
> >  
> >
> >>>o 8i e ele nao aceita fala q o tipo é invalido.
> >>>Alguem sabe como posso solucionar isso ?
> >>>
> >>>
> >>>Erro no SqlPlus:
> >>>SQL> SELECT ID, TIPO, TO_CHAR(TEXTO_PADRAO) AS TEXTO
> >>> 2             FROM TBL_EQUIP_TIPOS
> >>> 3             ORDER BY TIPO;
> >>>SELECT ID, TIPO, TO_CHAR(TEXTO_PADRAO) AS TEXTO
> >>>                        *
> >>>ERRO na linha 1:
> >>>ORA-00932: inconsistent datatypes
> >>>
> >>>
> >>>muito obrigado
> >>>Thiago
> >>>Msn: [EMAIL PROTECTED]
> >>>
> >>>      
> >>>
> >
> >
> >
> >
> >
> >
> >-------------------------------------------------------------------
-------------------------------------------------------
> >Atenção! As mensagens deste grupo são de acesso público e de 
inteira responsabilidade de seus remetentes.
> >Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
> >-------------------------------------------------------------------
-------------------------------------------------------
__________________________________________________________________
> >
> >Este Grupo recebe o apoio da SQL Magazine - 
www.devmedia.com.br/sqlmagazine 
> >__________________________________________________________________
> >O grupo Oracle_br não aceita anexos. Quando oferecer algum 
arquivo, tenha o link do mesmo para evitar trafego(pedidos) 
desnecessário. 
> >Links do Yahoo! Grupos
> >
> >
> >
> >
> > 
> >
> >
> >
> >  
> >
>






--------------------------------------------------------------------------------------------------------------------------
Atenção! As mensagens deste grupo são de acesso público e de inteira 
responsabilidade de seus remetentes.
Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ 
--------------------------------------------------------------------------------------------------------------------------__________________________________________________________________

Este Grupo recebe o apoio da SQL Magazine - www.devmedia.com.br/sqlmagazine 
__________________________________________________________________
O grupo Oracle_br não aceita anexos. Quando oferecer algum arquivo, tenha o 
link do mesmo para evitar trafego(pedidos) desnecessário. 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/oracle_br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 


Responder a