用Ado控件和DataGrid访问Access,rst为记录集,程序中对某条记录修改
rst.Update(v1,v2);--(1)
m_Adodc.Refresh();--(2)
DataGrid中显示的仍是未修改过的记录,如果没有第(2)语句,DataGrid可看到修改成功。但如果是三条语句:
rst.Update(v1,v2);
rst.Update(v1,v2);
m_Adodc.Refresh();
也可在DataGrid中看到修改结果,
另外,中间加入延时语句即
rst.Update(v1,v2);
Sleep(600);
m_Adodc.Refresh();
也可看到修改结果,为什么?
似rst.Update(v1,v2)执行后记录还未更新完便立即返回,以至于Refresh()后仍是以前的内容,如果是这样,如何判断Update已真正完成,
另外,为什么连续二条rst.Update(v1,v2)再Refresh()可看到修改的结果。