日期:2014-05-17  浏览次数:20862 次

有这样的问题吗? cursor不能放在程序包主体最后来实现,事这样的吗?
create   or   replace   package   toyspack   as

procedure   UpdateToyPrice;
function   AvgToyPrice   return   number;
--cursor   pri_cur   return   my_toys%rowtype;
end   toyspack;

create   or   replace   package   body   toyspack   as

cursor   pri_cur   return   my_toys%rowtype   is
select   *   from   my_toys;

procedure   UpdateToyPrice   is
pri   number;
begin
    select   price   into   pri   from   my_toys   where   id= '1 ';
end;


function   AvgToyPrice   return   number   is
    ave   number;
begin
    select   avg(price)   into   ave   from   my_toys;    
return   ave;
end;

end   toyspack;

--cursor   pri_cur   return   my_toys%rowtype   is
select   *   from   my_toys;     这个一定要在第一个的,是吗?


------解决方案--------------------
应该是放在前面,因为这只是游标的定义,并不是实际打开了。