对应的是SQL中的动态查询,照你上边写的可能就是:
Adoquery1.SQL.Text := 'select * from table1 where fld1 = :BM';//BM就是参数,可以在执行前指定它的值:
Adoquery1.Parameters.ParamByName('BM').value := 'sss';
Adoquery1.Open;
Adoquery1.SQL.Text := 'select * from table1 where fld1 = :BM';//BM就是参数,可以在执行前指定它的值:
Adoquery1.Parameters.ParamByName('BM').value := 'sss';
Adoquery1.Open;
adoquery1.close;
adoquery1.sql.clear;
adoquery1.sql.add('select * from table1 where name=:BM');
adoquery1.parambyaname('BM'):=edit1.text;
adoquery1.open;
应该是adoquery1.parambyname('BM'):=edit1.text;
begin
Close;
Sql.Text :=' Select * from TableName where Filed1=:pary'; //pary这里是个参数;
Parameters.ParamByName('BM').value:='123';
open;
end;上面的语句相当于:
Select * from Tablename Where Filed1='123'
begin
Close;
SQL.Clear;
SQL.Add('Delete from cgshddetail where dh=:dh');
//设置参数‘dh’;
Parameters.ParamByName('dh').Value:=trim(dh.Caption);
//‘dh’的值;
//等同于:sql.add('delete from cgshddetail where dh='''+trim
//(dh.caption)+'''');
ExecSQL;
Close;
myAppendDetail(ADOQuery1);
end
应该是adoquery1.parambyname('BM').asstring:=edit1.text;
应该是:adoquery1.parambyaname('BM').asstring:=edit1.text;关于你的问题解释如下:Adoquery1.Parameters.ParamByName('BM').value
Adoquery1不用说了
Parameters参数的意思
ParamByName('BM')指出是哪个参数这一句说明是名字叫BM的参数
value是参数的值