很奇怪的问题,关于数据库,大家帮忙
我在用wizard生成一个CRecordset的子类后,
访问数据库,有以下一段代码
bodyset.AddNew();
bodyset.m_BackLink=postset.m_RecordID;
bodyset.m_Content=tmpStr;
bodyset.m_TableName=SiteID;
bodyset.Update();
bodyset.Close();
大部分时候都是正常的,但有时候执行到bodyset.Update();时会出现Assertion failed
跟踪调试进了MFC\SRC\DBRFX.CPP,有下面这段
#ifdef _DEBUG
// Buffer address must not change - ODBC's SQLBindCol depends upon this
void* pvBind;
#ifdef _UNICODE
pvBind = pFX->m_prs->m_pvFieldProxy[nField-1];
#else // !_UNICODE
pvBind = value.GetBuffer(0);
value.ReleaseBuffer();
#endif
if (pvBind != pInfo->m_pvBindAddress)
{
TRACE1("Error: CString buffer (column %u) address has changed!\n",
nField);
ASSERT(FALSE);
这个ASSERT FAILED
}
#endif // _DEBUG
谁能告诉我这是为什么?100分送上,谢谢!