我现在用Adostoredproc调用SQL 2000的存储过程,可总是出错.存储过程的名称是 bookmanage_Confir 有三个参数, @Account,@Notice,@sqlNum,
其中sqlNum为返回值,哪为大哥说下怎么具体操作? 给存储过程传递参数,来得到返回值!!

解决方案 »

  1.   

    try
        ADOStoredProc := TADOStoredProc.Create(nil);
        ADOStoredProc.Connection := ADOConnection;    ADOStoredProc.ProcedureName := 'bookmanage_Confir';
        ADOStoredProc.Parameters.CreateParameter('@Account', ftInt, pdInput, 4, 0);
        ADOStoredProc.Parameters.CreateParameter('@Notice', ftString, pdInput, 20, name);
        ADOStoredProc.Parameters.CreateParameter('@sqlNum', ftInt, pdReturnValue, 4, 0);    ADOStoredProc.Prepared := True;
        ADOStoredProc.ExecProc;
        Result := ADOStoredProc.Parameters.ParamByName('@sqlNum').Value;
      finally
        ADOStoredProc.Free;
      end;
      

  2.   

    Adostoredproc.parambyname('@Account').asstring:=xxxxx;
    Adostoredproc.parambyname('@Notice').asstring:=xxxxx;
    Adostoredproc.open;
    varResult:=Adostoredproc.parambyname('sqlNum').asstring数据类型你看着办