再问DBGrid刷新问题,在线急等!曾经问过,但是没有答案

558047 2004-11-22 03:35:33
假设DBGrid显示了8条记录(通过一定的条件查询得到的),现在通过输入界面又输入一条记录,想让这条新增的记录成为DBGrid的第9条记录,和前8条记录一起显示在DBGrid上面。
...全文
178 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
cnrealboy 2004-11-24
  • 打赏
  • 举报
回复
我的和你的一样,也是通过录入界面提交数据的,除了删除。
不过,这样会有一个问题:定位信息回丢失,你可以重新定位纪录的方法来实现
cnrealboy 2004-11-24
  • 打赏
  • 举报
回复
在输入界面关闭的时候,如果修改了数据(包括增、删、改):
先关闭query,然后再打开他,就行了,
frmDataMdl->dbgQry->Close();
frmDataMdl->dbgQry->Open();
kmfangxun 2004-11-23
  • 打赏
  • 举报
回复
如果楼主用sql语句查询,那么是否显示第9条记录应该取决于你的查询条件和排序方式。如果第9条记录满足条件,重新执行查询即可(或者Query->Refresh()).
特招 2004-11-23
  • 打赏
  • 举报
回复
能实现 但是很麻烦

在where 语句里加上相应的查询条件,重查
Lonelywolf1899 2004-11-23
  • 打赏
  • 举报
回复
显然,8条记录(通过一定的条件查询得到的),

因此,你的第9条纪录也要满足条件,

插入到涉及此查询的表中
wangwei8117 2004-11-23
  • 打赏
  • 举报
回复
这个到有点难度!好象不能实现吧,如果还是显示8条记录的话是可以的,把这新插入的记录也显示共8条是很简单的,显示9条就有点难度了!~
558047 2004-11-23
  • 打赏
  • 举报
回复
已经如此操作了,具体怎么刷新?能否说的详细点?
kmfangxun 2004-11-23
  • 打赏
  • 举报
回复

建议到sql server版问问.
558047 2004-11-23
  • 打赏
  • 举报
回复
添加记录我是通过一个输入界面来添加的,不是直接在DBGrid中添加的
jishiping 2004-11-23
  • 打赏
  • 举报
回复
如果新增的记录,不符合查询条件,那么记录当然不会显示在DBGrid中。
顺便问一下,添加记录你是怎么做的?用户直接在DBGrid中添加吗?还是用另外的其它的控件来添加的?
558047 2004-11-23
  • 打赏
  • 举报
回复
SqlStr="select b.*,Z.*,ZjPbdAmtCpkOut,DhjbdAmtCpkOut,ZjZbdAmtCpkOut from gxCpkbd b";
SqlStr+=" left join gxZjPbd on CpkbdNamePart=ZjPbdNamePart and CpkbdDate=ZjPbdDate";
SqlStr+=" left join gxDhjbd on CpkbdNamePart=DhjbdNamePart and CpkbdDate=DhjbdDate";
SqlStr+=" left join gxZjZbd on CpkbdNamePart=ZjZbdNamePart and CpkbdDate=ZjZbdDate";
SqlStr+=" left join (select ZsbdNamePart,ZsbdDate,sum(ZsbdAmtCpkIn) as AmtCpkTIn";
SqlStr+=" from gxZsbd group by ZsbdNamePart,ZsbdDate) Z";
SqlStr+=" on CpkbdNamePart=Z.ZsbdNamePart and CpkbdDate=Z.ZsbdDate";
SqlStr+=frmMain->whereZsch;
frmDataMdl->dbgQry->Close();
frmDataMdl->dbgQry->SQL->Clear();
frmDataMdl->dbgQry->SQL->Add(SqlStr);
frmDataMdl->dbgQry->Open();
kmfangxun 2004-11-23
  • 打赏
  • 举报
回复
你的查询条件是什么,可不可以再详细些!
558047 2004-11-23
  • 打赏
  • 举报
回复
Query->Refresh()提示缺少更新或刷新的键列信息
558047 2004-11-23
  • 打赏
  • 举报
回复
真的没有办法了?
kmfangxun 2004-11-22
  • 打赏
  • 举报
回复
把自增字段设为Primary Key ,再刷新以下DateSet.
558047 2004-11-22
  • 打赏
  • 举报
回复
不能实现。
kmfangxun 2004-11-22
  • 打赏
  • 举报
回复
在表里增加一个自增字段,比如id , 然后按id排序。

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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