var Strs :TStrings; Str :String; i :Integer; begin Strs := TStringList.Create; for i :=0 to 4 do Strs.Add(IntToStr(i)); {随便构造的数组} Str := Strs.CommaText; {Str的值为: 0,1,2,3,4 } ShowMessage(str); with ADOQuery1 do begin CLose; sql.Clear; sql.Add('select * from testtable where id in ('+Str+')'); {id 为整型,如果是字符型Str须为:'0','1','2','3','4'} Open; end; end;
to Kevin_Lmx(繁华阅尽): 谢谢,你的方法应该是基本可行的。 其实我当时采用的方法是自己去构造一个in语句,和你的差不多,但你用了TStrings,这样好象也会方便些。 谢谢各位。
Strs :TStrings;
Str :String;
i :Integer;
begin
Strs := TStringList.Create;
for i :=0 to 4 do Strs.Add(IntToStr(i));
{随便构造的数组}
Str := Strs.CommaText;
{Str的值为: 0,1,2,3,4 }
ShowMessage(str);
with ADOQuery1 do
begin
CLose;
sql.Clear;
sql.Add('select * from testtable where id in ('+Str+')');
{id 为整型,如果是字符型Str须为:'0','1','2','3','4'}
Open;
end;
end;
谢谢,你的方法应该是基本可行的。
其实我当时采用的方法是自己去构造一个in语句,和你的差不多,但你用了TStrings,这样好象也会方便些。 谢谢各位。