我用VC++6.0的数据库的向导添加的记录集操作ODBC的SQL Server 2000数据库,用记录集中的m_pDatabase提交事物,第一次进入该函数时,能够成功,但第二次时,到达MoveFirst()时,会出现"Function sequence error"的错误,不知是什么原因?请高手赐教。       程序如下:
     
CDatabase::BeginTrans();
if(!m_nOrPSet.m_pDatabase->BeginTrans())
{
return;
}
if(m_nOrPSet.m_pDatabase->CommitTrans())
{
m_nOrPSet.m_pDatabase->GetCursorCommitBehavior();
}
if(!(m_nOrPSet.IsEOF()&&m_nOrPSet.IsBOF()))
{//如果有记录 TRY
{
///////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////
到这里就出现了那样的错误了,我真的不知是什么原因,请高手来帮忙
////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////            m_nOrPSet.MoveFirst();
}
CATCH(CDBException, e)
{
MessageBox(e->m_strError,"自动产生ID",MB_OK);
return "";
}
END_CATCH
while(!m_nOrPSet.IsEOF())
{
if(strcmp(str,m_nOrPSet.m_ORDERPAR_ID)==0)
{//有相同的编号
IsExist=TRUE;
break;
}
m_nOrPSet.MoveNext();
}
}//没有记录,则就肯定没有与之相同的记录。 else
{
m_nOrPSet.m_pDatabase->Rollback();
return ;
}