我在oracle数据库中创建了一个程序包,里面的存储过程是用来返回一个结果集
create or replace package body sa.getkf
as
procedure docdkf(p_rc out mytype)
as
begin
open p_rc for select * from docdkf;
end;
end;
在WORKSHEET里执行创建成功,但是如何使用tquery控件对他进行调用呢 
请各位给个指导

解决方案 »

  1.   

    ' exec ...';应该是这样吧
      

  2.   

    不行 直接用tquery.sql.add('exec getkf.docdkf');不行
      

  3.   

    tquery.sql.text:='{call getkf.docdkf}';
      

  4.   

    为什么不用TStoredProc呢?
      

  5.   

    不行,Delphi下的TStoredProc控件不能找到package里面的函數過程。需要自己手動去查找調用。
      

  6.   

    給你一個簡單的處理辦法。在Tquery中寫個pl_sql過程就ok。例如query.clear;query.sql.add(' begin getkf.docdkf; end; ');query.ExecSQL;
    ADO的控件可以用。可是速度相對會慢。