首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

施用TADOStoredProc组件在给存储过程参数@TaskCount赋值时提示参数not found

2012-12-29 
使用TADOStoredProc组件在给存储过程参数@TaskCount赋值时提示参数not found?本人delphi新手,在使用TADOSt

使用TADOStoredProc组件在给存储过程参数@TaskCount赋值时提示参数not found?
本人delphi新手,在使用TADOStoredProc组件时,在执行到sp.Parameters.ParamByName('@TaskCount').Value := -1时提示@TaskCount not found ,怎么回事?我的存储过程中是有@TaskCount参数的
代码如下: 
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, StdCtrls;

type
  TForm1 = class(TForm)
    ADOConnection1: TADOConnection;
    ADOStoredProc1: TADOStoredProc;
    procedure FormCreate(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
  

procedure TForm1.FormCreate(Sender: TObject);
begin
  adostoredproc1.Parameters.Refresh;
end;

procedure TForm1.FormShow(Sender: TObject);
var
  sp: TADOStoredProc;
begin
  sp := TADOStoredProc.Create(Self);
  sp.Connection := ADOConnection1;

  sp.CommandTimeout := 0;
  sp.ProcedureName := '[dbo].[up_build_switchtask]';

  sp.Parameters.Refresh;

  sp.Parameters.ParamByName('@TaskCount').Value := -1;

  sp.ExecProc;
end;

end.
[解决办法]
呵,错了,应是输入参数。改成pdInput
sp.Parameters.CreateParameter('@TaskCount',ftInteger,pdInput,0,null);

热点排行