try
{
CString sSQL = "restore database test from disk = 'd:\\test.dat'";
m_pConn->Execute((_bstr_t)sSQL, NULL, adCmdText);
}
catch(_com_error e)
{
MsgBox(e.Description(), MB_ICONHAND);// 捕捉异常
return -2;
}比如源文件不存在,或当前库正在使用无法恢复,这些错误都捕捉不到,但如果sql语句有语法错误,则可以捕捉到。有什么办法能把所有的错误都捕捉到。谢谢!
{
CString sSQL = "restore database test from disk = 'd:\\test.dat'";
m_pConn->Execute((_bstr_t)sSQL, NULL, adCmdText);
}
catch(_com_error e)
{
MsgBox(e.Description(), MB_ICONHAND);// 捕捉异常
return -2;
}比如源文件不存在,或当前库正在使用无法恢复,这些错误都捕捉不到,但如果sql语句有语法错误,则可以捕捉到。有什么办法能把所有的错误都捕捉到。谢谢!
解决方案 »
- VS2008的提示帮助没有出来,怎么办呢?
- 基于Chrome开源提取的界面开发框架开篇
- VC资源文件的代码在那里写?
- 怎样在对话框上按一下按钮输出程序中的数据?
- 取进程ID
- 大家好!如果我的程序要用到SQL Server2000,客户机可能没有装,发布时应该怎样做呢?
- 请教如何把Exe文件合并?
- 我是菜鸟,我想用菜单调用一个对话框,可是在菜单函数里面该写什么呢?
- vc6中使用stlport居然会出现编译错误!
- 如何保存传真文件?
- 关于多个PRINT ,_vtprintf, _sntprinf ... 众多的PRINTF 函数用哪一个比较好。
- VS2005开发的程序,在Vista系统下,怎么才能获得管理员的权限呢?
做成 SQL Server 的存储过程,可以判断备份是否成功;
然后在客户端程序中判断 存储过程 的返回值。
存储过程是个好办法,但我不想再改程序了。在客户端程序里就不能捕捉到SQLServer的所有错误信息吗?
数据库连接、SQL语法错误、或某个操作的库、表不存在,这些都能捕捉到
但恢复数据库时,若D:\test.dat不存在,或当前库在使用无法恢复,这些都捕捉不到望高人指点。
{
MsgBox(e.Description(), MB_ICONHAND);// 捕捉异常
return -2;
}
catch(...)
{
}
试过,还是捉不到根本没跳到这里
catch(...)
{
}