可以循环选择数据然后保存到数据集里吗?该怎么处理

可以循环选择数据然后保存到数据集里吗?


可以循环选择数据然后保存到数据集里吗?

我想在一个循环内把数据选出来,然后再在dbgrid里显示。
但是似乎只是执行最后一条sql。

------解决方案--------------------
使用数据库的 "书签 "TBookMark
var
bm:TbookMark;
begin
bm:=qr.getbookmark;
qr.next;
.............
q1.gotobookmark(bm);

qr.FreeBookmark(bm);


如果是需要多次记录,可以将bookmark存入TstringList
不过注意,
D5 的声明TBookmark = Pointer; bookmark是指针;
D7Bookmark是string;

还有不要再数据集刷新后使用刷新前定义的BookMark,可能会出错(borlands说的).


------解决方案--------------------
sqlstr:= ' ';
for I := 1 to 10 do
if ckbox[I].Checked then sqlstr:=sqlstr+ ' or age= '+inttostr(I);
with DM_Main.Q1 do
begin
Close;
SQL.Clear;
SQL.Text := 'Select Name,TelNum from tb1 where 1=2 '+sqlstr;
Open;
end;