数据库查询怎么会少一条记录
连到数据库后查询总是会少一条记录,而且查询出来的数据排序也和数据库里不一样。哪里有问题?
下图为数据库里数据

下图为查询结果,查的是“2”

下图为数据库里数据

下图为查询结果,查的是“2”

if (!ADOQuery1->Eof)
{
Edit2->Text=ADOQuery1->FieldByName("date")->AsDateTime;
Edit3->Text=ADOQuery1->FieldByName("time")->AsDateTime;
Edit4->Text=ADOQuery1->FieldByName("NT")->AsString;
Edit5->Text=ADOQuery1->FieldByName("WT")->AsString;
Edit6->Text=ADOQuery1->FieldByName("GT")->AsString;
int q=ADOQuery1->RecordCount;
if(ADOQuery1->FindFirst()) //查找结果集中的第一条记录
{
StringGrid1-> Align=alClient;
StringGrid1->RowCount=q; //设置StringGrid1的总行数
StringGrid1-> ColCount=8;
StringGrid1-> Cells[1][0]= "姓名 ";
StringGrid1-> Cells[2][0]= "日期 ";
StringGrid1-> Cells[3][0]= "时间 ";
StringGrid1-> Cells[4][0]= "G.T. ";
StringGrid1-> Cells[5][0]= "W.T. ";
StringGrid1-> Cells[6][0]= "G.T. ";
int m=0;
while(m<q)
{
if(ADOQuery1->FindNext()) //查找结果集中的下一条记录,是不是这里有问题?
{
StringGrid1-> Cells[1][m+1]= ADOQuery1->FieldByName("peifang")->AsString;
StringGrid1-> Cells[2][m+1]= ADOQuery1->FieldByName("date")->AsDateTime;
StringGrid1-> Cells[3][m+1]= ADOQuery1->FieldByName("time")->AsDateTime;
StringGrid1-> Cells[4][m+1]= ADOQuery1->FieldByName("NT")->AsString;
StringGrid1-> Cells[5][m+1]= ADOQuery1->FieldByName("WT")->AsString;
StringGrid1-> Cells[6][m+1]= ADOQuery1->FieldByName("GT")->AsString;
}
m++;
}
}
...全文
相关推荐
Mysql查询最近一条记录的sql语句(优化篇)
主要介绍了Mysql查询最近一条记录的sql语句,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
DB(数据库查看器)
DB数据库查看器 可查询paradox及dbf数据库文件内容。
SQL获取第一条记录的方法(sqlserver、oracle、mysql数据库)
本文给大家收集整理些关于sql获取第一条记录的方法,包括sqlserver获取第一条记录,oracle获取第一条记录,mysql获取第一条记录,对sql获取第一条记录的方法感兴趣的朋友可以参考下本
SQL查询当前数据上一条和下一条的记录
SQL查询当前数据上一条和下一条的记录,管用,仅供参考!!!
Oracle左连接返回多条记录中一条记录的查询语句
Oracle左连接返回多条记录中一条记录的查询语句,更具指定条件分组排序,返回各组中第一条记录


数据库及相关技术
