http://blog.sina.com.cn/s/blog_6d0730c70100uhp1.html
bool CBookDb::AddBookNote(const BookNoteInfo& note)
{
try
{
m_pRecordset->Open(_T("select * from BookNotes"),_variant_t((IDispatch*)m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
m_pRecordset->AddNew();//添加一条新纪录
if(note.m_strId.IsEmpty())
return false;
m_pRecordset->PutCollect(_T("Id"), _variant_t(note.m_strId));
m_pRecordset->PutCollect(_T("BookPath"), _variant_t(note.m_strBookPath));
m_pRecordset->PutCollect(_T("OriginalText"), _variant_t(note.m_strOriginalText));
m_pRecordset->PutCollect(_T("BeginOffset"), _variant_t(note.m_nBeginOffset));
m_pRecordset->PutCollect(_T("EndOffset"), _variant_t(note.m_nEndOffset));
m_pRecordset->PutCollect(_T("NoteText"), _variant_t(note.m_strNoteText));
m_pRecordset->Update();//不要漏掉,否则下面的close会出现 UNKNOWN ERROR 0X800A0E79
}
catch (_com_error e)
{
AfxMessageBox(e.ErrorMessage());
m_pRecordset->CancelUpdate(); //不要漏掉 :)
CString strInfo;
strInfo.Format(_T("AddNewBookDetails出错errormessage=%s decription=%s"), e.ErrorMessage(), e.Description());
LogFile::WriteLine(strInfo);
m_pRecordset->Close();
return false;
}
//m_pRecordset->Close();
return true;
}