With ADOStroedProc do
   begin   
     Prepare;
     Params[0].asstring:=edit1.text;
     params[1].asstring:=edit2.text;
     ExecProc;
   end;
先传参数,然后执行!

解决方案 »

  1.   

    取输出参数值怎样取,输出要不要用个变量副值啊,以存输出参数据的值?
    对这个控件,要不要create?
      

  2.   

    ADOStoredProcCopyTechnic.ProcedureName := 'caxer_copy;1';ADOStoredProcCopyTechnic.Parameters.Clear;
                ADOStoredProcCopy.Parameters.CreateParameter('@OperationIndex',ftInteger,pdInput,4,0);
                ADOStoredProcCopy.Parameters.CreateParameter('@OperationOrderNO',ftInteger,pdInput,4,0);ADOStoredProcCopy.Prepared := true;ADOStoredProcCopy.ExecProc;
      

  3.   

    当用AdoStoredProc连接存储过程时,如果存储过程定义了OUTPUT变量则AdoStoredProc自动会产生一个类型为output的参数,别外AdoStoredProc本身还有一个默认的参数@return_value
      try
        adospSave.Connection.BeginTrans;
        adospSave.Close;
        adospSave.Parameters.ParamByName('@Operator').Value:=mainform.UserName;
        adospSave.ExecProc;
    //如果有output类型的变量则可以直接象@return_value一样直接取值
        if adospSave.Parameters.ParamByName('@RETURN_VALUE').Value<>0 then
          raise exception.create('存储过程执行失败。')
        adospSave.Connection.CommitTrans;
      except
        adospSave.Connection.RollbackTrans;
        raise;
      end;