.......
adoConn :TADOConnection;
adoComm :TADOCommand;
........
begin
   adoComm.Parameters.Clear();
   adocomm.CommandText := 'Execute test @m1=:_m1,@m2=:_m2,@result:=_result output'
   with adoComm.Parameters.ParamByName('_Succ') do
   begin
     DataType := ftInteger;
     Direction := pdOutput;
   end;
end;

解决方案 »

  1.   

    .......
    adoConn :TADOConnection;
    adoComm :TADOCommand;
    I:integer;
    ........
    begin
      adoComm.Parameters.Clear();
      adocomm.CommandText :='Execute test @m1=:_m1,@m2=:_m2,@result:=_result output'
      with adoComm.Parameters.ParamByName('_m1') do
      begin
        DataType := ftSmallint
        Direction := pdInput;
        Value     := 20;
      end;  
      with adoComm.Parameters.ParamByName('_m2') do
      begin
        DataType := ftSmallint
        Direction := pdInput;
        Value     := 10;
      end; 
     with adoComm.Parameters.ParamByName('_result') do
      begin
        DataType := ftSmallint
        Direction := pdInput;
        Value     := 20;
      end; 
     adoComm.Execute; 
     I := adoComm.Parameters.ParamByName('_Result').Value;
     ShowMessage(intTostr(i)); 
    end;
    //随手写的,应该不会有问题(个别的可能有一些拼写错误) 
      

  2.   

    //更正
    with adoComm.Parameters.ParamByName('_result') do
      begin
        DataType := ftSmallint
        Direction := pdOutPut;
      end; 
      

  3.   

    StoredProc1.connection:=your connection;
    StoredProc1.name:=your storedproc;
    StoredProc1.Parameters.ParamByName('@m1 ').value :=1;
    storedproc1.parameters.parambyname('@m2').value :=2;
    storedproc1.ExecProc;//ado的
    (storedproc1.prepare;storedproc1.execproc;)
    yourresult :=storedproc1.parameters.parambyname('@result').value; 
      

  4.   

    Query1.Close;
    Query1.SQL.Clear;
    Query1.SQL.Add('declare @Ret smallint ');
    Query1.SQL.Add('exec dbo.Test @M1=:m1,@m2=:m2,@Result=@Ret output ');
                                                               ~~~~~~(如果出错就把此去掉)
    Query1.SQL.Add('select ret=@Ret ');
    Query1.Open;