关于dbgrid的显示问题
delphi吧
全部回复
仅看楼主
level 4
847427402 楼主
procedure TForm1.Button1Click(Sender: TObject);
var
i:integer;
begin
for i:=10 to 11 do
begin
with adoquery1 do
begin
close;
sql.Clear;
// showmessage(inttostr(i)) ;
sql.add('select sum(jz) from ylrkb where rq >=''2013-'+inttostr(i)+'-01'' and rq<''2013-'+inttostr((i+1))+'-01''');
// showmessage('2013-'+inttostr(i)+'-01') ;
open;
end;
end
end;
如上代码所示 ,希望通过循环的方式来查询数据,并把数据写到DBgrid控件中,但是每次运行后只显示一个数据,求解答,非常感谢
2014年05月07日 10点05分 1
level 4
847427402 楼主
求帮助啊
2014年05月07日 11点05分 2
大神快来
2014年05月07日 13点05分
level 7
DBGrid可以直接关键数据库~~~双击它
2014年05月07日 14点05分 3
大哥,dbgrid已经连接好了,为什么dbgrid里面只显示一条数据
2014年05月07日 14点05分
那就是你数据库只有一条啊~~~还有一种可能就是你只取了一条
2014年05月07日 14点05分
level 7
你是要取到两条记录吗?
procedure TForm1.Button1Click(Sender: TObject);
begin
adoquery1.close;
adoquery1.sql.Clear;
// showmessage(inttostr(i)) ;
adoquery1.sql.add('select sum(jz) from ylrkb where rq >=''2013-10-01'' and rq<''2013-11-01''');
// showmessage('2013-'+inttostr(i)+'-01') ;
adoquery1.open;
end;
类似于这样,你怎么还用上了循环呢?执行了2次,你看到的是第二次执行结果,第一次执行结果一闪而过,你没看到。(我不太喜欢用with语句,这些显得代码逻辑嵌套关系更复杂)
2014年05月07日 17点05分 4
1