Milton Acho que fui claro, mas o que eu preciso é somar os valores. Marcos
----- Mensagem original -----De: Milton Bastos Henriquis Jr. <[EMAIL PROTECTED]>Até: <oracle_br@yahoogrupos.com.br>Cc: Data: Sexta-feira, Dezembro 14 2007 12:39 PMAssunto: Re: RES: [oracle_br] SQL DinamicoPois é, temos que ver qual a necessidade, qual a regra de negócio dele, pois na query que ele mandou estava assim: ':vnA+:vnB+:vnC' Tem que ver se ele quer somar os números ou concatenar... On Dec 14, 2007 11:26 AM, Ricardo Francisco <[EMAIL PROTECTED]> wrote: > tenta assim. > > CREATE OR REPLACE FUNCTION fc_teste_sql RETURN NUMBER IS > vnvalor NUMBER; > vna NUMBER := 1; > vnb NUMBER := 2; > vnc NUMBER := 3; > vssql VARCHAR2(2000) := vnA||vnB||vnC; > BEGIN > vssql := 'SELECT ' || vssql || ' FROM DUAL'; > EXECUTE IMMEDIATE vssql > INTO vnvalor; > RETURN(vnvalor); > END fc_teste_sql; > > > Em 14/12/07, Informática - Usina Moreno <[EMAIL PROTECTED]> > escreveu: > > > > Não funciona, veja o que fiz: > > > > create or replace function FC_TESTE_SQL > > return NUMBER is > > vnValor number; > > vnA NUMBER := 1; > > vnB NUMBER := 2; > > vnC NUMBER := 3; > > vsSql VARCHAR2(2000) := ':vnA+:vnB+:vnC'; > > begin > > vsSql := 'SELECT ' || vsSQL || ' FROM DUAL'; > > EXECUTE IMMEDIATE vsSql INTO vnValor; > > return(vnValor); > > end FC_TESTE_SQL; > > > > Dá o ora-01008:not all variable bound > > > > Marcos > > > > ----- Mensagem original -----De: Bruno Lorenzini < > > [EMAIL PROTECTED] <listas.distribuicao%40gmail.com>>Até: < > > oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br>>Cc: Data: > > Sexta-feira, Dezembro 14 2007 11:17 AMAssunto: RES: [oracle_br] SQL > > DinamicovsSql VARCHAR2(2000) := ':a+:b+:c'; > > > > vsSql := 'SELECT ' || vsSQL || ' FROM DUAL'; > > > > EXECUTE IMMEDIATE vsSql INTO vnResultado; > > > > Tenta isso acho que vai funcionar xD... o que sei é que esse "FROM > DUAL" > > na > > clausula "EXECUTE IMMEDIATE" não existe. > > > > Abs, > > > > Bruno Lorenzini > > > > _____ > > > > De: oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br> > [mailto: > > oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br>] Em > > nome de Informática - Usina Moreno > > Enviada em: sexta-feira, 14 de dezembro de 2007 11:06 > > Para: [EMAIL PROTECTED] Com. Br; Oracle_Br > > Assunto: [oracle_br] SQL Dinamico > > > > Srs bom dia > > > > Eu preciso usar o sql dynamic, mas não estou conseguindo, segue um > > exemplo: > > > > vsSql VARCHAR2(2000) := ':a+:b+:c'; > > EXECUTE IMMEDIATE vsSql FROM DUAL INTO vnResultado > > eu posso ter qualquer expressão matemática dentro da variavel vsSql > > Seu substituo as variaveis pelo valores e mando executar funciona, mas > eu > > quero executar sem subtituição. > > > > ALguem poderia dar um exemplo usando o que passei acima? > > > > Marcos > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > > > > > > > > -- > Ricardo Luiz Francisco > (17) 8132-7311 > > "É muito melhor arriscar coisas grandiosas, alcançar triunfos e glórias, > mesmo expondo-se a derrota, do que formar fila com os pobres de espírito > que > nem gozam muito nem sofrem muito, porque vivem nessa penumbra cinzenta que > não conhece vitória nem derrota." Theodore Roosevelt > > > [As partes desta mensagem que não continham texto foram removidas] > > > > >Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » > Procedure » Scripts » Tutoriais acesse: > http://www.oraclebr.com.br/codigo/ListaCodigo.php > > -------------------------------------------------------------------------------------------------------------------------- > >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de > inteira responsabilidade de seus remetentes. > Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ > > -------------------------------------------------------------------------------------------------------------------------- > >O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: > http://www.oraclebr.com.br/ > > ------------------------------------------------------------------------------------------------------------------------ > Links do Yahoo! Grupos > > > [As partes desta mensagem que não continham texto foram removidas] >Apostilas » Dicas e Exemplos » Funções » Mundo Oracle » Package » Procedure » >Scripts » Tutoriais acesse: http://www.oraclebr.com.br/codigo/ListaCodigo.php -------------------------------------------------------------------------------------------------------------------------- >Atenção! As mensagens do grupo ORACLE_BR são de acesso público e de inteira >responsabilidade de seus remetentes. Acesse: http://www.mail-archive.com/oracle_br@yahoogrupos.com.br/ -------------------------------------------------------------------------------------------------------------------------- >O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: http://www.oraclebr.com.br/ ------------------------------------------------------------------------------------------------------------------------ Links do Yahoo! Grupos