关于ADO缓存更新的问题?

WhyAndAnswer 2002-04-29 06:51:45
在ADO下,判断是否有缓存未更新的属性是否是RecordStatus(在BDE下是Updatespending),如果是,那该怎么用,帮助中无samples,都急死了!
...全文
39 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
BeyondRainy 2002-06-17
  • 打赏
  • 举报
回复

void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
{
if(ADOTable1->UpdateStatus()!=usUnmodified)
ShowMessage("尚未提交修改!");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
ADOConnection1->BeginTrans();
ADOTable1->Post();
ADOTable1->UpdateBatch(arAll);
try{
ADOConnection1->CommitTrans();
}
catch(...)
{ ADOTable1->Cancel();
ADOConnection1->RollbackTrans();
}

}
WhyAndAnswer 2002-06-17
  • 打赏
  • 举报
回复
解决了,是这样的:
if (ADOTable1->LockType == ltBatchOptimistic)
{
ADOTable1->Filtered = true;
ADOTable1->FilterGroup = fgPendingRecords;
};

if(ADOTable1->RecordCount)
{
ADOConnection1->BeginTrans();
ADOTable1->Post();
ADOTable1->UpdateBatch(arAll);
try{
ADOConnection1->CommitTrans();
}
catch(...)
{ ADOTable1->Cancel();
ADOConnection1->RollbackTrans();
}
}
WhyAndAnswer 2002-05-25
  • 打赏
  • 举报
回复
问题是够清楚了吧
WhyAndAnswer 2002-05-22
  • 打赏
  • 举报
回复
就象你在Word中修改了数据,在关闭Word时会问你“是否要保存”
其实就是解决这个问题。
问了这么长时间,难道大家都不会吗?
WhyAndAnswer 2002-05-10
  • 打赏
  • 举报
回复
我是在窗体关闭时判断有无未更新的记录,可能时updatestatus吧,单我又不能确定。
BCB的帮助真是的!(只好怪Borland了)
zjqc 2002-05-02
  • 打赏
  • 举报
回复
关注!
redsuns2001 2002-05-02
  • 打赏
  • 举报
回复
判断是否有缓存未更新的属性是用RecordStatus来判断。
缓存更新:UpdateBatch()

ADOConnection1->BeginTrans();
ADOTable1->UpdateBatch(arAll);
try{
ADOTable1->Post();
ADOConnection1->CommitTrans();
}
catch(...)
{ ADOTable1->Cancel();
ADOConection1->RollbackTrans();
}
夭夭 2002-05-01
  • 打赏
  • 举报
回复
你用update之后,就会上去,如果没有的话,在断开前,会刷上去的

13,825

社区成员

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

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