我想用query查询出数据后储存到一个数组里面?用什么方法可以实现(50分)

  • 主题发起人 主题发起人 wolfsong
  • 开始时间 开始时间
试试下面代码。
var
ss array [1..1000,1..5] of String;
i:integer;
begin
Query1.open;
i:=0;
while not Query1.eof do begin
inc(i);
ss[i,1]:=Query1.FindField('zd1').AsString;
ss[i,2]:=Query1.FindField('zd2').AsString;
ss[i,3]:=Query1.FindField('zd3').AsString;
ss[i,4]:=Query1.FindField('zd4').AsString;
ss[i,5]:=Query1.FindField('zd5').AsString;
Query1.next;
end;
end;
 
能告诉我zd1..zd5是什么吗,解决了马上加分
 
ZD1..ZD5是指字段1至5吧, 可以先用QUERY1.FieldCount求出字段数,这样从
INC(I)到QUERY1.NEXT之间可以用循环,现在不再需要给定字段名称,只需访问通过字段的
列数值来获得ASSTRING,此做法适用于未知数据库字段的情况.
 
刚才说错了,是SS[I,1]到SS[I,5]之间用循环,先要定义变量VAR J,K:INTEGER;
通过QUERY1.FieldCount获得J的值, 可J作为循环次数,
K:=1;
WHILE K<=I DO BEGIN
SS[I,K]:= ;
K:=K+1
END;
 
ZD1..ZD5是指字段1至5
 
多人接受答案了。
 
后退
顶部