Hi !
I am getting run time exception when I run insert query.
Actually I am calling some database related function from my main CPP file.
The code is as follow:
This code successfully insert record but give unhandled exception.Code://Main.cpp void ABC::Insert_Database(char* filepath,int UserId,char *EmailService) { try { int c,i=0; CDatabase *pdatabase=new CDatabase(); pdatabase->Connect(); char size[300]; FILE* LogFile=NULL; if(pdatabase) { int userid=3; string mailservice="yahoo"; string emaildata="sasaa"; string parsed=""; string logpath="c:\dad"; string sRecDate = pdatabase->GetDateTime(); string logfileext="html"; string date="03/05/2006 03:34:44"; char query[400]; sprintf(query, "insert into tblEmailService (uID , EmailService, logfileExtension,\ EmailData, RecDate, EmailLogPath, EmailDate) values ( %d, '%s', '%s', '%s',format(#%s#,\"mm/dd/yyyy hh:mm:ss\"), '%s', '%s')",\ userid, mailservice.c_str(),logfileext.c_str(),\ emaildata.c_str (), date.c_str (), logpath.c_str (), emaildate.c_str ()); pdatabase->Insert((CString)query); } catch(_com_error &e) { std::ofstream f1("C:\\error.txt",ios::app); f1.write(e.ErrorMessage(),100); } //Database function related CPP file //connection related function BOOL CDatabaseSingleton::Connect() { CoInitialize(NULL); if(!m_bIsDBConnected) { string DBPath =C:\\Database\\abc.mdb"; string Cnn = "Provider=Microsoft.Jet.OLEDB.4.0; DATA SOURCE="; Cnn+=DBPath; Cnn+=";USER ID=admin;PASSWORD=;Jet OleDB:Database Password =...;"; try { m_pDBConnect.CreateInstance(__uuidof(Connection)); if(SUCCEEDED(m_pDBConnect->Open(CnnStr.c_str(),"","",0))) { m_bIsDBConnected = true; m_pRecordSet.CreateInstance(__uuidof(Recordset)); m_pCommandPtr.CreateInstance(__uuidof(Command)); m_pCommandPtr->ActiveConnection = m_pDBConnect; } } catch (_com_error &e) { m_bIsDBConnected = false; _bstr_t err = e.Description (); string sError (err); CActivityLoggerSingleton *pLogger = CActivityLoggerSingleton::CreateActivityLoggerInstance (); pLogger->WriteLog ("CDatabaseSingleton::Connect ", sError.c_str ()); //string str = HandleError (e); } } return m_bIsDBConnected; } ///insert function BOOL CDatabase::Insert(CString sInsert) { BOOL bResult = FALSE; CDatabase *Dis=new CDatabase(); _bstr_t bstrQuery (sInsert.GetBuffer (sInsert.GetLength ())); try { variant_t vNull; vNull.vt = VT_NULL; vNull.scode = DISP_E_PARAMNOTFOUND; m_pCommandPtr->CommandType = adCmdText; m_pCommandPtr->CommandText = bstrQuery; _RecordsetPtr pRecSet = m_pCommandPtr->Execute(&vNull, &vNull, adExecuteNoRecords); bResult = true; } catch( _com_error &e ) { _bstr_t err = e.Description (); string sError (err); CActivityLoggerSingleton *pLogger = CActivityLoggerSingleton::CreateActivityLoggerInstance (); pLogger->WriteLog ("CDatabaseSingleton::Insert ", sError.c_str ()); string sSQL (bstrQuery); pLogger->WriteLog ("CDatabaseSingleton::Insert ",sSQL.c_str () ); bResult = false; }
Please tell where I am wrong.
Thanks'



LinkBack URL
About LinkBacks


