Pessoal, boa tarde !

Estamos com um problemão aqui na empresa devido à uma PL Table.

O Lance é que não conseguimos retornar os dados da mesma através de um cursor 
OUT.

Quando compilo a PROCEDURE (similar para teste) abaixo é dado o seguinte erro:

ORA-22905: cannot access rows from a non-nested table item

E mesmo utilizando um cast no table do open cursor0 -- que seria assim: 
table(cast(v_employees_type as r_employees_type)) -- não funciona, aí ele gera 
o erro: 

ORA-00902: invalid datatype

Alguém jah trabalhou com isso e teria alguma idéia?

Obrigado!


CREATE OR REPLACE PROCEDURE PR_TESTE (cursor0 OUT sys_refcursor) as

TYPE r_employees_type IS RECORD (
 employee_id employees.employee_id%type,
 first_name  employees.first_name%type,
 salary      employees.salary%type);

type t_employees_type is table of r_employees_type;

v_employees_type t_employees_type := t_employees_type();

c number;

begin
    null;
    c:= 1;
    
    for x in (select employee_id, first_name, salary  from employees) loop
        v_employees_type.extend;
        v_employees_type(c).employee_id := x.employee_id;
        v_employees_type(c).first_name  := x.first_name;
        v_employees_type(c).salary      := x.salary;
        
        c:= c+1;        
    end loop;
    
    open cursor0 for
    select
          employee_id, 
          first_name,
          salary
    from
        table(v_employees_type);

    
end;


At.
Cleber R. Marques
Administrador de Bancos de Dados
Programmers Informática Ltda


______________________________________________________________________

Cancelar assinatura...: [EMAIL PROTECTED]
Moderadores da lista....:Dorian Anderson Soutto [EMAIL PROTECTED] 
Fernanda Damous [EMAIL PROTECTED] 
Alisson Aguiar [EMAIL PROTECTED]
______________________________________________________________________
http://br.groups.yahoo.com/group/oracle_br/ 
______________________________________________________________________

Sair da Lista...: [EMAIL PROTECTED] 
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