后来我查了一下,有人说要先建个包再写过程我改后还是出错,改过的过程:--先建一个包
create or replace package packname is 
begin
   type dataset is ref cursor
end packname; 
--再建存储过程
CREATE OR REPLACE PROCEDURE SY_Info_All
 (SY_Info_Lei IN NUMBER,dataset out packname.dataset) 
IS
BEGIN
  open dataset for select * from SY_Info where SY_Info_Lei=SY_Info_Lei order by SY_Info_ID desc;
END SY_Info_All;

解决方案 »

  1.   

    CREATE OR REPLACE PROCEDURE SY_Info_All
     (SY_Info_Lei IN NUMBER,dataset out packname.dataset) 
    IS
    BEGIN
      open dataset for select * from SY_Info where SY_Info_Lei=SY_Info_Lei order by SY_Info_ID desc;
    END SY_Info_All;这么写就可以,报什么错误?把错误信息贴出来
      

  2.   

    我是直接在表那里建的,没有提示错误信息后来我在SQL*PLUS工作单位这个工作中把
    CREATE OR REPLACE PROCEDURE SY_Info_All
     (SY_Info_Lei IN NUMBER,dataset out packname.dataset) 
    IS
    BEGIN
      open dataset for select * from SY_Info where SY_Info_Lei=SY_Info_Lei order by SY_Info_ID desc;
    END SY_Info_All;
    打进去,下面就提示:警告: 创建的过程带有编译错误。