【发布时间】:2014-03-16 21:31:49
【问题描述】:
我正在开发一个 MFC 项目,该项目与我的 SQL Server 上的特定表进行通信。但是当我尝试进行删除查询时,我在运行时收到 Debug Assertion Failed 错误消息,当我检查我的表时也没有删除任何内容。 这是我认为错误所在的代码:
<pre> HRESULT hr;
hr=COLEDBTESTSetAccessor::OpenDataSource();
if(FAILED(hr))
MessageBox(NULL,"Connection Failed\n","",MB_OK);
else
MessageBox(NULL,"Connected\n","",MB_OK);
CString strString;
strString.Append("DELETE FROM PHONE_NUMBERS WHERE ID=");
CString strParam;
strParam.Format("%d",nId);
strString.Append(strParam);
MessageBox(NULL,(LPCSTR)strString,"",MB_OK);
hr=this->Open(m_session,strString); <code>
更新和插入查询也会发生同样的情况,但表记录会更新。 谁能告诉我我的错误在哪里? 谢谢你。 :)
【问题讨论】:
-
非常粗制滥造的错误处理。当您收到指示失败的错误代码时,不要只说“它不起作用!”因为这并不能帮助任何人弄清楚它为什么不起作用,包括你。不顾失败继续执行代码当然是一个非常严重的错误。