out类型的变量返回值保存到某个变量中去。
例如:
procedure TForm1.Button1Click(Sender: TObject);
var
str:string;//保存返回变量
begin
sp1.Parameters.ParamValues['v_col1']:='aaa';//传参数
sp1.ExecProc;//执行
str:=sp1.Parameters.ParamValues['RETURN_VALUE'];//返回变量
showmessage(str);//输出
end;

解决方案 »

  1.   

    注:我调用的存储过程只有两个参数
    SQL> desc p_demo;
    PROCEDURE p_demo
    自变量名称                       类型                    输入/输出默认值?
    ------------------------------ ----------------------- ------ --------
     V_COL1                         VARCHAR2                IN
     V_COL2                         VARCHAR2                OUT
      

  2.   

    谢谢楼上的代码,可是你看我程序的最后一句是将返回值赋给了临时变量阿而我在程序单步执行过程中一旦要跨入try程序段就报错,说是类型错误或者是变量个数错误
    可是我对照代码可以看到是一一对应的阿不知道还有没有人知道这个该怎么解决
    3q
    非常急啊
      

  3.   

    现在找到问题了,原来是myAdoSp.Parameters.CreateParameter('Ret',ftInteger,pdOutput,2,'');
    最后一个给赋值出错了