procedure TForm1.Button1Click(Sender: TObject);
var aaa:tparameter;
begin
    aaa:=adoquery1.Parameters.AddParameter;
    aaa.Name:='bh';
    aaa.Value:=5;
    adoquery1.SQL.Add('select * from rysx where bh>:bh');
    adoquery1.Active:=true;
end;

解决方案 »

  1.   

    这个问题似乎还是没有解决,程序每次运行到
    adoquery1.sql.add('select * from rysx where bh > :bh'');时总是出错
    错误描述是:“变量或者类型不正确,或者不在可接受范围之内,要不就是与其他数据冲突。”我知道在adoquery控件(Object Inspector)的sql中直接写如语句:select * from rysx where bh > :bh
    再在程序中调用
    with adoquery1 do
      begin
        close;
        Parameters.ParamByName('bh').Value := 5;
        open;
      end;
    是没错的。
    但是在程序中直接写sql.text,就是出错,不知道是什么原因,望大虾指点。