TQuery.SQL.ADD('Select * from 1.db '); TQuery.first; while not TQuery.Eof do begin if TQuery.fieldByName('').asstring = 'xxx' then Break; end; TQuery.close; TQuery.open; OK了。
哦,在while循环中, while not TQuery.Eof do begin if TQuery.fieldByName('').asstring = 'xxx' then break; TQuery.next; end;
好了。找到问题的所在了。这里上来说几句: pengqi19810627(心累了) 的方法,有个循环的过程,如果数据很多的话,效果就不好了。delphiseabird(沙鸥)的方法不错,很快就找到我想要的数据,我现在就采用这个。 下面把完整的写出来,方便大家学习。 Query1.Close; Query1.Sql.Clear; Query1.Sql.Add('Select * From 1.DB'); Query1.Open; Query1.Locate(KeyFields, KeyValues, [loPartialKey]); 我就采用这个。或者是: Query1.Close; Query1.Sql.Clear; Query1.Sql.Add('Select * From 1.DB'); Query1.Open; Query1.first; while not Query1.Eof do begin if Query1.fieldByName(KeyFields).asstring = ‘xxx’ then begin break; end; Query1.next; end; 但是用这个的话,有个很明显的循环过程显现,如果数据很多的话,效果就非常不好了。
TQuery.first;
while not TQuery.Eof do
begin
if TQuery.fieldByName('').asstring = 'xxx' then
Break;
end;
TQuery.close;
TQuery.open;
OK了。
while not TQuery.Eof do
begin
if TQuery.fieldByName('').asstring = 'xxx' then
break;
TQuery.next;
end;
pengqi19810627(心累了)的答案很不错啊,用动态查询更好,
pengqi19810627(心累了) 的方法,有个循环的过程,如果数据很多的话,效果就不好了。delphiseabird(沙鸥)的方法不错,很快就找到我想要的数据,我现在就采用这个。
下面把完整的写出来,方便大家学习。 Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('Select * From 1.DB');
Query1.Open; Query1.Locate(KeyFields, KeyValues, [loPartialKey]);
我就采用这个。或者是:
Query1.Close;
Query1.Sql.Clear;
Query1.Sql.Add('Select * From 1.DB');
Query1.Open; Query1.first;
while not Query1.Eof do
begin
if Query1.fieldByName(KeyFields).asstring = ‘xxx’ then begin
break;
end;
Query1.next;
end;
但是用这个的话,有个很明显的循环过程显现,如果数据很多的话,效果就非常不好了。