您的位置:首页 > 产品设计 > UI/UE

过程:先Edit,然后SetFieldValue,接着Update,最后MoveNext

2013-08-05 18:01 495 查看

过程:先Edit,然后SetFieldValue,接着Update,最后MoveNext

CDaoDatabase database;

...

database.Open (sFile,false,false,"Excel 5.0");

CDaoRecordset recset(&database);

...

recset.MoveNext ();//跳过若干条记录

recset.MoveNext ();

for(int j=1;j<=i;j++)

{

TCHAR msg[255]="";

sprintf(msg,"%d",j);

recset.Edit ();

recset.SetFieldValue ("A1",msg);

recset.SetFieldValue ("B1",data.GetAt (j-1));

recset.Update ();

recset.MoveNext ();

// Sleep(200);

}

recset.Close ();

database.Close();

之前,我尝试在某个MoveNext后立即进行SetFieldValue操作,可是失败了:

---------------------------

excel

---------------------------

在不使用 AddNew 或 Edit 的情况下,更新 (Update) 或取消更新 (CancelUpdate)。

---------------------------

确定

---------------------------

然后通过搜索,发现要SetFieldValue,需要先Edit一下,完成后,要Update。于是成功了。

刚才想优化一下。现在的代码,每次SetFieldValue,都要先Edit然后Update,那么我能不能从第一个MoveNext开始之前,就先Edit,在最后一个的时候再Update呢?这样似乎能省不少时间!

结果,失败了!

原来,这个recset的SetFieldValue是针对单条、当前数据进行操作的,所以,要修改,必须对当前该条数据先进行Edit,修改后,再Update。

释然!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐