Ah sim.....

Então cara, vc não consegue pelo fato de um campo ou variável do tipo clob ter 
suas "particularidades". 

Eu sinceramente também não sei e até pesquisaria pra vc (até pq também estava 
precisando dessa informação), mas o certo seria fazer uma pesquisa no Google ou 
metalink sobre como converter clob em varchar por exemplo. Assim o problema 
seria resolvido ;).

 

Assim que algum dos dois encontrar a "fórmula" encaminhamos, beleza?

 

 

 

Carlos Martello

DBA Oracle / Consultor de Tecnologia

TEL:  55+21+3094-6250

Choice Technologies S/A - Inteligência em Energia

e-mail: [EMAIL PROTECTED]

 

De: oracle_br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Gabriel 
Herdt
Enviada em: quarta-feira, 19 de novembro de 2008 15:17
Para: oracle_br@yahoogrupos.com.br
Assunto: Re: RES: RES: [oracle_br] Ajuda em procedure[URGENTE]

 

Eu não consigo passar o resultado do Get_dll para uma variavel e 
executar o conteudo dessa variavel. Tem outra forma de executar o 
Resultado do GET_DDL?

--- Em oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> , 
"Carlos Eduardo P. Martello" 
<[EMAIL PROTECTED]> escreveu
>
> Gabriel, até vi agora de uma forma mais atenta que vc já faz o 
execute
> immediate dentro da função.....
> 
> 
> 
> Não entendi o que você quer então....
> 
> 
> 
> É o execute immediate que não está funcionando?
> 
> 
> 
> 
> 
> Abs,
> 
> 
> 
> 
> 
> 
> 
> Carlos Martello
> 
> DBA Oracle / Consultor de Tecnologia
> 
> TEL: 55+21+3094-6250
> 
> Choice Technologies S/A - Inteligência em Energia
> 
> e-mail: [EMAIL PROTECTED]
> 
> 
> 
> De: oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br>  
[mailto:oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> ] 
Em
> nome de Gabriel Herdt
> Enviada em: terça-feira, 18 de novembro de 2008 22:33
> Para: oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br> 
> Assunto: Re: RES: [oracle_br] Ajuda em procedure[URGENTE]
> 
> 
> 
> assim obrigado vou tentar, maas eu quero executar p dll gerado pela 
> funcao. pode me dizer como?
> --- Em oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br>  
> <mailto:oracle_br%
40yahoogrupos.com.br>
> , "Carlos Eduardo P. Martello" 
> <carlos.martello@> escreveu
> >
> > Gabriel,
> > 
> > 
> > 
> > Tente o seguinte:
> > 
> > 
> > 
> > 
> > 
> > Declare
> > 
> > Vsql varchar2(2000) :='';
> > 
> > Begin
> > 
> > Vsql := fn_compara;
> > 
> > Execute immediate vsql;
> > 
> > End;
> > 
> > 
> > 
> > Se ao invés de vc retornar um clob, retornar um varchar2, ajuda.
> > 
> > 
> > 
> > Abs,
> > 
> > 
> > 
> > 
> > 
> > 
> > 
> > Carlos Martello
> > 
> > DBA Oracle / Consultor de Tecnologia
> > 
> > TEL: 55+21+3094-6250
> > 
> > Choice Technologies S/A - Inteligência em Energia
> > 
> > e-mail: carlosmartello@
> > 
> > 
> > 
> > De: oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br>  
> > <mailto:oracle_br%
40yahoogrupos.com.br> 
> [mailto:oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br>  
> <mailto:oracle_br%
40yahoogrupos.com.br>
> ] Em
> > nome de Gabriel Herdt
> > Enviada em: segunda-feira, 17 de novembro de 2008 16:49
> > Para: oracle_br@yahoogrupos.com.br <mailto:oracle_br%40yahoogrupos.com.br>  
> > <mailto:oracle_br%
40yahoogrupos.com.br>
> 
> > Assunto: [oracle_br] Ajuda em procedure[URGENTE]
> > 
> > 
> > 
> > Pessoal como executar o resultado de DBMS_METADATA.get_ddl(...) 
em 
> > uma Function? Segue abaixo minmha Function
> > 
> > FUNCTION FN_COMPARA (
> > pr_usera IN VARCHAR2,
> > pr_userb IN VARCHAR2,
> > pr_erro OUT VARCHAR2
> > )
> > RETURN VARCHAR2
> > IS
> > vtable_name VARCHAR2 (30);
> > DDL CLOB;
> > i INTEGER;
> > a INTEGER;
> > x INTEGER;
> > --get dbms_metadata.get_ddl
> > (object_type,name,schema,version,model,transform);
> > -- variable_name datatype;
> > BEGIN
> > vtable_name := '';
> > i := 0;
> > x := 0;
> > -- grant select on all_tables to TCCB;
> > 
> > FOR tabela IN (SELECT table_name
> > FROM all_tables
> > WHERE owner IN (UPPER ('tcca'), UPPER ('TCCB'))
> > AND table_name NOT IN (SELECT table_name
> > FROM all_tables
> > WHERE owner = 'TCCB'))
> > LOOP
> > vtable_name := tabela.Table_name;
> > 
> > DDL := DBMS_METADATA.get_ddl ('TABLE', vtable_name, pr_usera);
> > EXECUTE IMMEDIATE TO_CHAR (DDL);
> > 
> > COMMIT;
> > END LOOP;
> > 
> > RETURN TO_CHAR (DDL);
> > EXCEPTION
> > WHEN OTHERS
> > THEN
> > pr_erro := ('Erro: ' ||pr_erro||SQLERRM);
> > END;
> > 
> > 
> > 
> > 
> > 
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> 
> 
> 
> 
> 
> [As partes desta mensagem que não continham texto foram removidas]
>

 



[As partes desta mensagem que não continham texto foram removidas]

Responder a