为什么会有异常发生?

qiqi5521 2008-11-13 04:15:04
下面这段代码,一旦执行到pTD->m_Database.ExecuteSQL(pTD->strSQL);就会报错,是何原因呢?别的地方这样调用就没事。

bool CPosServerDlg::executeSQL(ThreadData_Stru *pTD,const char * tbl)
{
char trace[1024];
sprintf(trace,"execute_SQL::SQL is %s,table is %s!\n", pTD->strSQL, tbl);
LOG_PRINTF(trace,pTD);
LOG_PRINTF("execute_SQL begin\n",pTD);

pTD->m_RecordSet.m_pDatabase = &pTD->m_Database;
try{
pTD->m_Database.ExecuteSQL(pTD->strSQL);
}
catch(CException){
pTD->m_RecordSet.Close();
LOG_PRINTF("execute_SQL fail!\n",pTD);
strncpy(pTD->datashow.respcode,RESP_84,2);
return false;
}
pTD->m_RecordSet.Close();
LOG_PRINTF("execute_SQL end!\n",pTD);

return true;
}
...全文
122 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
srxumin 2008-11-13
  • 打赏
  • 举报
回复
函数中哪一行出错你也写一下呀
guosong2005 2008-11-13
  • 打赏
  • 举报
回复
不太明白,catch里哪里错了,多什么东西了呀!
闪破风浪 2008-11-13
  • 打赏
  • 举报
回复
catch多点东西了~~~
guosong2005 2008-11-13
  • 打赏
  • 举报
回复
一楼提到的我都试了,不行!我在数据库里试了我的语句了,SQL语句没有问题。
zhucde 2008-11-13
  • 打赏
  • 举报
回复
自己调试吧,可能性很多
shailen126 2008-11-13
  • 打赏
  • 举报
回复
1,传进来的参数是否正确
2,表是否已打开和记录集是否有效
3,SQL语句是否正确
无外乎这几种原因。。

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧