纪录超过1条怎么得到每一条每个字段的值呢(dbgrid的问题)

iis88mm 2002-05-27 02:44:53
ShowMessage(DBGrid1->Fields[2]->AsString);
可以提出第一条数据每个字段的值
但如果纪录超过1条怎么得到每一条每个字段的值呢
...全文
30 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
WhyAndAnswer 2002-05-27
  • 打赏
  • 举报
回复
具体问题说一下
appleIIappleII 2002-05-27
  • 打赏
  • 举报
回复
你的要求不清楚
1。是要字段数,还是记录数
2。要如何显示
iis88mm 2002-05-27
  • 打赏
  • 举报
回复
我要用sql语句查询阿

所以没有用table
hljie 2002-05-27
  • 打赏
  • 举报
回复
是用Table1->FieldCount来得到记录的个数的吧
sigui 2002-05-27
  • 打赏
  • 举报
回复
单单用DBGrid是没有直接得到记录数的属性的,就我所知的只有结合数据集控件用,我说的RecordCount和楼上的!ADOTable1->Eof加Next()都是可行的。
我不懂电脑 2002-05-27
  • 打赏
  • 举报
回复
用Query->Next();
iis88mm 2002-05-27
  • 打赏
  • 举报
回复
可是dbgrid没有recordcount属性阿
用dbgrid->fieldcount的到的是字段个数
这么得到dbgrid中的纪录数,并提出没个字段的值呢
zjsheng 2002-05-27
  • 打赏
  • 举报
回复
我个人觉得用Table直接操作比DBGrid要稳妥得多。

Table1->DisableControls();
//关闭数据感知组件的显示能力,防止DBGrid的闪烁
Table1->First();
while(!Table1-Eof)
{
???=Table1->FieldByName("????")->Value; //赋值,据实现所需自行编写
Table1->Next();
}
Table1->EnableControls(); //开启数据感知组件的显示能力
黑兵 2002-05-27
  • 打赏
  • 举报
回复
你为什么要取DBGrid中的字段值呢?你应该从它使用的ADO或者别的什么数据控件中取字段的值。
sigui 2002-05-27
  • 打赏
  • 举报
回复
用数据集的RecordCount属性可得到记录数。
duduwolf 2002-05-27
  • 打赏
  • 举报
回复
Memo1->Lines->Clear();
ADOTable1->First();
while(!ADOTable1->Eof)
{
for(int i=0;i<ADOTable1->FieldCount;i++)
Memo1->Lines->Add(ADOTable1->Fields->Fields[i]->AsString+"\t\r";
ADOTable1->Next();
}

13,873

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧