如何保存从数据库中查询出来的记录(50分)

  • 主题发起人 主题发起人 Lucifer
  • 开始时间 开始时间
L

Lucifer

Unregistered / Unconfirmed
GUEST, unregistred user!
通过调用Richedit1.lines.append(Query1.FieldByName('FieldName1').AsString);可以把
记录保存起来,但是只能保存当前的一条记录,如果我想用SQL语句一次读50条记录,然后
把这五十条记录全都保存起来,怎么办呢?
 
如果要放到richedit上,我想你可以用循环
如果存到文件中,savetofile
 
循环读取?那不是换汤不换药,还是一样的一次读取一条记录?
循环保存?不行的,一次读出多条记录后再保存的总只是最后一条记录。
 
我不太懂你的意思,如果是为保存现场方便编辑比较的话,可以使用kbmMemTable:
kbmMemTable1.CreateAs(Query1);
然后,将数据复制到表中,使用完后,table1.Empty或Close
 
循环读取为什么不行?我遇到这种问题一直都用循环读取,也没见出了什么问题
query1.first;
richedit1.lines.clear;
while not query1.eof do
begin
Richedit1.lines.add(Query1.FieldByName('FieldName1').AsString);
query1.next;
end;
 
我是想把数据库的记录做为文本转存到richedit中去,以方便我进一步的处理。
 
terry_lzs说得很常用!
我不明白你的意思。
用ClientdataSet.SaveAs
 
参考terry_lzs,Lucifer是这个意思吗?
var
s1:string;
query1.First;
s1:='';
while not query1.Eof do
begin
for i:=0 to query1.Fields.Count-1 do
begin
s1:=s1+query1.Fields.asstring+trim(edit1.text);
//edit1.text为字段间用的间隔符
end;
Richedit1.Lines.Add(s1);
query1.Next;
s1:='';
end;
Richedit1.Lines.SaveToFile(edit2.text);
//edit2.text为文本保存的路径,自己输入
 
接受答案了.
 
后退
顶部