读书人

关于数据集操作的有关问题停止数据库后

发布时间: 2013-11-06 16:26:37 作者: rapoo

关于数据集操作的问题停止数据库后while( !m_pUaesRdSet->IsEOF() )不退出循环
本帖最后由 xujie7194 于 2013-11-05 14:37:46 编辑 唉 新手请教个问题

m_pRdSet->MoveFirst();
while( !m_pRdSet->IsEOF() )
{
//操作数据库
m_pRdSet->GetCollect("CIT_BLACK", CarICTempData.bCitBlack);
m_pRdSet->GetCollect("CIT_NAME", CarICTempData.strCitName);
m_pRdSet->GetCollect("CIT_OFFICES", CarICTempData.strCitOffices);

m_pRdSet->MoveNext();
}


数据集指针m_pRdSet,通过while循环往结构体CarICTempData,填充数据。当进入循环后,停数据库,则该代码就不会退出循环,不停的填充重复的数据。然而在不停数据库的情况,都是正常的。我就纳闷啊,数据集对象不是在内存中吗,这和停数据库有什么关系啊
[解决办法]
你应该判断下MoveNext的返回值 你停数据库的情况下MoveNext应该已经失败了 你没判断 所以一直在读取当前行...

读书人网 >VC/MFC

热点推荐