sql server的存储过程没有输入参数,返回三个real类型数据
CREATE  PROCEDURE dbo.class_static
@pm10 real output,
@so2 real output,
@no2 real output
 AS
......
在delphi7中,用TADOStoredProc,
var
  Pm10,So2,No2:single  try
    ADOConnPredict.Open ;
    with ADOStoredProcK_YULIANG do begin
    Parameters.Clear;
    ProcedureName := 'class_static';
    Parameters.CreateParameter('myPm10',ftFloat,pdOutput,4,1);
    Parameters.CreateParameter('mySo2',ftFloat,pdOutput,4,1);
    Parameters.CreateParameter('myNo2',ftFloat,pdOutput,4,1);   
    Prepared := true;
    ExecProc ;
    Pm10:=ADOStoredProcK_YULIANG.Parameters.ParamByName('myPm10').Value;
    So2:=ADOStoredProcK_YULIANG.Parameters.ParamByName('mySo2').Value;
    No2:=ADOStoredProcK_YULIANG.Parameters.ParamByName('myNo2').Value;
    end;
  finally
    ADOStoredProcK_YULIANG.Close;
    ADOConnPredict.Close;
存储过程的运行是正确的返回real值的,在sql server中测试通过。但是在上面语句中运行,没有报错,但是Pm10,So2和No2的值都是0。奇怪了,该怎么写程序呢?