我编写的一个插入测试程序在运行时内存的使用量不停的增加,不插入数据就不会有这个问题,怎么回事,插入函数代码如下:
连接字符串:
LPCSTR ConnectString = "Provider=OraOLEDB.Oracle;Password=atm;User Id=atm;Data Source=atmmon";BOOL CDatabaseCtrl::InsertDataToBase(VIDEOIMGDATA &pVideoImage,_ConnectionPtr pConnect,BYTE *pBlobData)
{
         try
{
m_Recordset->AddNew();
m_Recordset->Fields->GetItem(_variant_t("atm_id"))->Value = _bstr_t(pVideoImage.csAtmId);
m_Recordset->Fields->GetItem(_variant_t("video_time"))->Value = _bstr_t(pVideoImage.ctVideoTime.Format("%Y-%m-%d %H:%M:%S"));
m_Recordset->Fields->GetItem(_variant_t("channel"))->Value = _variant_t((short)pVideoImage.shChannel);
m_Recordset->Fields->GetItem(_variant_t("event_id"))->Value = _variant_t((long)pVideoImage.nEventId);
m_Recordset->Fields->GetItem(_variant_t("frame_id"))->Value = _variant_t((long)pVideoImage.nFrameId);
AppendImage("frame_data",pBlobData,m_iBufferLength);//插入BLOB数据
m_Recordset->Update();
}
catch(_com_error e)
{
// MessageBox(NULL,e.Description(),"",MB_ICONERROR);
YC_TRACE("Insert data Error:%s %s\n",e.ErrorMessage(),(LPCSTR)e.Description());
// m_Recordset->Close();
return FALSE;
}
return TRUE;
}