我做了一个小程序,提取数据库中的六个值,谢了一个结构体区别这六个值,代码如下pDb = new CDatabase;
rc = pDb->OpenEx(connstr, CDatabase::noOdbcDialog);
if(!rc)
{
TRACELOG(Information, _T("打开数据库联接失败 ......"));
}pRes = new CRecordset(pDb);for (int i=0; i<8; i++)
{
switch(globalDisplayArray[i].type)
{
case Dis_Average_GiveUp_Time:
{
         CString  strSql = _T(""); //sql语句
pRes->Open(CRecordset::forwardOnly, strSql, CRecordset::executeDirect | CRecordset::readOnly);
         
         //结果处理
         pRes->Close();
         }
break;
case Dis_GiveUp_Rate:
{
          CString strSql = _T(""); pRes->Open(CRecordset::forwardOnly, strSql, CRecordset::executeDirect | CRecordset::readOnly); //业务处理
          pRes->Close();
          } break;
case Dis_Average_Answer_Time:

         break;
case Dis_Average_Queue_Time:
break;
case Dis_InstantAnswer_Rate:
break;
case Dis_Average_Talk_Time:
break;
default:
break;
}
程序是一个for循环,每次取一个类型的值,最后把所有值取出来,然后显示,但是进入i=2的循环时候,就是pRes->Open(CRecordset::forwardOnly, strSql, CRecordset::executeDirect | CRecordset::readOnly);往下执行的时候出现异常,报内存错误,求各位大侠给看看,是我用法有错误吗?