我的CRECORDSET 类DELETE()总是出错?不晓是为什么?请各位指点一下代码如CRECORDSET RS(&DB);
RS.OPEN(AFX_DB_USE_DEFAULT_TYPE,"SELECT * FROM DELIVER")
IF(!RS.ISBOF())
{
RS.MOVEFIRST();
RS.DELETE();
IF(!RS.ISEOF)
RS.MOVENEXT();
ELSE
RS.MOVELAST();
}
执行到RS。DELETE()时就出什么DBCORE。CPP错误。
编绎是没没问题的。
如果用TRY的话也CATCH不到CDBEXCEPTION *错误。
我查过贴子,以前有人和我提了一样的问题,不过没人回答。没结贴。
不知道怎么搞的!!各位拜托帮帮忙啊。
非常着急
RS.OPEN(AFX_DB_USE_DEFAULT_TYPE,"SELECT * FROM DELIVER")
IF(!RS.ISBOF())
{
RS.MOVEFIRST();
RS.DELETE();
IF(!RS.ISEOF)
RS.MOVENEXT();
ELSE
RS.MOVELAST();
}
执行到RS。DELETE()时就出什么DBCORE。CPP错误。
编绎是没没问题的。
如果用TRY的话也CATCH不到CDBEXCEPTION *错误。
我查过贴子,以前有人和我提了一样的问题,不过没人回答。没结贴。
不知道怎么搞的!!各位拜托帮帮忙啊。
非常着急
IADORecordBinding *picRs = NULL;
_RecordsetPtr pRs("ADODB.Recordset");
_ConnectionPtr pConn("ADODB.Connection" );
CFootballTeamRs rsFootballTeam; pConn->ConnectionString = chDataSource;
pConn->Provider = _T("Microsoft.Jet.OLEDB.4.0");
try
{
pConn->Open(pConn->ConnectionString, "", "", adModeUnknown);
pRs->QueryInterface(
__uuidof(IADORecordBinding), (LPVOID*)&picRs); pRs->Open( (_variant_t)chSqlSentence, // 查询DemoTable表中所有字段
pConn.GetInterfacePtr(), // 获取库接库的IDispatch指针
adOpenDynamic,
adLockOptimistic,
adCmdText);
TESTHR(picRs->BindToRecordset(&rsFootballTeam));
}
catch (_com_error &e)
{
sprintf(errMsg,_T("Code meaning = %s\n"), (char*) e.ErrorMessage());
AfxMessageBox(errMsg);
return;
}
try
{
pRs->MoveFirst();
pRs->Move(nCurrentIndex);
pRs->Delete(adAffectCurrent);
pRs->Update();
pRs->Close();
pConn->Close(); }
catch (_com_error &e)
{
sprintf(errMsg,_T("Code meaning = %s\n"), (char*) e.ErrorMessage());
AfxMessageBox(errMsg);
return;
}