2,496
社区成员
发帖
与我相关
我的任务
分享
procedure Tdisplayfm.Edit1Change(Sender: TObject);
var
str:string;
begin
if edit1.Text <>'' then
begin
listbox1.Clear;
//此两行有问题like后少了空格
//str:='select distinct planname from boiler where planname like'+''''
// +edit1.Text+'%''';
str:='select distinct planname from boiler where planname like '+''''
// +edit1.Text+'%''';
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add(str);
adoquery1.Open;
while not adoquery1.Eof do
begin
listbox1.Items.Add(adoquery1.FieldValues['planname']);
adoquery1.Next;
end;
listbox1.Visible:=true;
end;
end;
procedure Tdisplayfm.Edit1Change(Sender: TObject);
var
str,strb:string;
begin
if edit1.Text <>'' then begin
listbox1.Clear;
str:='select distinct planname from boiler where planname like'+''''
+edit1.Text+'%''';
strb:='select * from boiler ';
with adoquery1 do begin
close;
sql.Text:=str;
DisableControls;
open;
while not eof do begin
listbox1.Items.Add(FieldValues['planname']);
next;
end;
listbox1.Visible:=true;
close;
sql.Text:=strb;
Open;
EnableControls;
end;
end;
end;
{你这句只显示planname一个字段,不出错才怪}
str:='select distinct planname from boiler where planname like'+''''
+edit1.Text+'%''';