+ -
当前位置:首页 → 问答吧 → combobox选中后执行查询表格显示在DBbrid中。

combobox选中后执行查询表格显示在DBbrid中。

时间:2011-09-27

来源:互联网

procedure TForm5.onselect(Sender: TObject);
begin
if adoquery3.active then adoquery3.active :=true;
with adoquery3 do
begin
adoquery3.close;
adoquery3.sql.Clear;
adoquery3.Sql.Add('select *from :value');
ADOQUERY3.Parameters.ParamByName('value').Value:=combobox8.Text;
ADOQUERY3.ExecSQL;
ADOquery3.Prepared;
end;


我的SQL语句错了么 为什么执行的时候会提示 必须声明变量@P1??

作者: xiaobaigezhinu   发布时间: 2011-09-27

SQL语句*号必须有空格,再说你是更换表明,个人认为不要用参数。再就是你是查询就不要用ExecSQL。更改如下:
procedure TForm5.onselect(Sender: TObject);
begin
//if not adoquery3.active then adoquery3.active :=true; 如没打开才要打开吧。从你这段程
//序看这句是多余的。
with adoquery3 do
begin
close;
sql.Clear;
Sql.Add(Format('select * from %s',[ComboBox8.Text]));
Open;
end;

作者: Oraclers   发布时间: 2011-09-27