我用VC连接SQL表,把一个表中的几个字段读出来,进行一些计算后再把结果写到另一个字段中,部分代码如下:
theApp.m_pADOSet->MoveFirst();
for(int k=0;k<iCount;k++)
{
.......
.......
try{

_variant_t vValue,vColumn;
vColumn.SetString("mois");
                  vValue.SetString(temp);
theApp.m_pADOSet->Update(vColumn,vValue);
} catch (_com_error &e) {
CString strError = (char*)(_bstr_t)e.Description();
AfxMessageBox(strError);
}
theApp.m_pADOSet->MoveNext();
}其中mois是要写入的字段名,temp是计算后的要写入的值.奇怪的是在执行了一段时间后程序报错,错误信息为:“基于查询的更新失败,因为没有发现要更新的行”但是程序已经执行了一段时间,而且已经成功的完成了几百条记录呀!出错的语句是theApp.m_pADOSet->Update(vColumn,vValue),不知道原因,帮忙!