Olá pessoal, tudo bem?

Trabalho há 5 anos com o postgreSQL, mas com o Oracle sou novo e estou 
apanhando um pouco. Preciso de uma ajuda.

Preciso de 3 valores (2 do tipo int e 1 do tipo varchar), que serão calculados 
atraves de alguns selects e algumas regras. Para isso pensei em fazer uma 
função que me retornasse um CURSOR.
Isso era o que iria fazer se fosse no PostgreSQL. Porém não estou conseguindo 
retornar um cursor no Oracle. A ideia que estou usando é:

create or replace function calc_values return cursor is
a int;
b int;
CURSOR ref1 IS SELECT cod from teste ORDER BY cod asc;
CURSOR ref2 IS SELECT a,b from dual;
BEGIN

OPEN ref1;
a := 0;
b := 1;

LOOP
FETCH ref1 INTO a;
EXIT WHEN ref1%NOTFOUND;
a := a +a;
b := b+1;
END LOOP;

OPEN ref2;
RETURN ref2;
END;

Essa funcao está apresentada apenas a idéia.. o cálculo é bem mais complexo, 
mas não é o problema. O problema é que essa funcao não roda.
Quem irá chamar essa funcao é uma aplicação delphi.

Alguem tem alguma idéia? Estou fazendo algo errado?

Obrigado a todos...

Abraços

-------------------

Rodrigo Santos

                
---------------------------------
 Novidade no Yahoo! Mail: receba alertas de novas mensagens no seu celular. 
Registre seu aparelho agora!

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

Responder a