create or replace Package demo 
AS 
  TYPE EmpCurTyp IS REF CURSOR; 
  procedure open_emp_cv(i_in in NUMBER, emp_cv OUT EmpCurTyp); 
END demo; create or replace package body demo
as
  procedure open_emp_cv(i_in in NUMBER, emp_cv OUT EmpCurTyp)
  is
  begin
    open emp_cv for select aaclass.* from aaclass where aaclass.pnumber= i_in;
  end open_emp_cv;
end demo;  adoquery1.close ;
  adoquery1.parameters.clear ;
  adoquery1.sql.clear ;
  adoquery1.sql.add('{call demo.open_emp_cv(?)}') ;
  adoquery1.parameters.createparameter('i_in',ftinteger, pdinput, 4, 10) ;
  adoquery1.open;
总是提示列名不对create or replace Package pkg_demo 
AS 
  TYPE EmpCurTyp IS REF CURSOR; 
  procedure open_emp_cv(emp_cv OUT EmpCurTyp); 
END pkg_demo; create or replace package body pkg_demo
as
  procedure open_emp_cv(emp_cv out EmpCurTyp)
  is
  begin
    open emp_cv for select * from aaclass;
  end open_emp_cv;
end pkg_demo;  adoquery1.close ;
  adoquery1.parameters.clear ;
  adoquery1.sql.clear ;
  adoquery1.sql.add('{call demo.open_emp_cv}') ;
  adoquery1.open;
这种不带参数的就可以
小弟才开始学习Oracle,找了很多资料也不知道问题出在哪。请大家帮我下,小弟感激不尽。我用的是D7,ORACLE 11G