Eduardo, No geral a exception NO_DATA_FOUND funciona sem problemas, mas pode ser que sua query esteja com outro erro, então faz assim
linhas em vermelho FUNCTION fun_uf(param1 IN PLS_INTEGER, p_nr pdo.nr%TYPE) RETURN PLS_INTEGER IS v_total PLS_INTEGER; BEGIN SELECT NVL(qt_somas, 0) INTO v_total FROM qrt_ WHERE nr = p_nr; if v_total is null then v_total := 0; end if; RETURN v_total; EXCEPTION WHEN NO_DATA_FOUND THEN return 0; WHEN OTHERS THEN return 0; END fun_uf; Em 25 de maio de 2010 12:22, Eduardo <eduardo.pa...@gmail.com> escreveu: > > > Senhores, > > como eu faço para retornar zero quando não há linhas? > > FUNCTION fun_uf(param1 IN PLS_INTEGER, > p_nr pdo.nr%TYPE) > RETURN PLS_INTEGER IS > v_total PLS_INTEGER; > BEGIN > > > SELECT NVL(qt_somas, 0) > INTO v_total > FROM qrt_ > WHERE nr = p_nr; > RETURN v_total; > EXCEPTION > WHEN NO_DATA_FOUND > THEN > return 0; > > END fun_uf; > > -- > ---------- > > Eduardo > > -- Edson Almeida Junior Telefones: (021) 8600-8439 E-MAIL.....: ed...@consulting.com.br MSN........: e...@hotmail.com SKYPE....: edsonalmeidajr [As partes desta mensagem que não continham texto foram removidas] ------------------------------------ -------------------------------------------------------------------------------------------------------------------------- >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/ -------------------------------------------------------------------------------------------------------------------------- >Apostilas » Dicas e Exemplos » Função » Mundo Oracle » Package » Procedure » >Scripts » Tutoriais - O GRUPO ORACLE_BR TEM SEU PROPRIO ESPAÇO! VISITE: >http://www.oraclebr.com.br/ ------------------------------------------------------------------------------------------------------------------------ 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: oracle_br-unsubscr...@yahoogrupos.com.br <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html