如何捕获数据库的异常???

zhaohongbo83 2010-06-18 03:35:15
就是用C++ builder写的一个程序,用ADO方式连接的oracle。如何捕获一些异常呢,
比如说连接不到oracle数据库,我能捕获到连接异常,知道是连接异常后进行数据库重连。
但是如何捕获请大家指点下,没有过C++ builder,别人写的程序出错了,要改一下!谢谢
...全文
590 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
zzbinfo 2010-06-18
  • 打赏
  • 举报
回复
执行sql起来有异常也是这样捕捉的。不信你可以试试
zhaohongbo83 2010-06-18
  • 打赏
  • 举报
回复
如LS所述,如果是连接的时候肯定好了,但是如果是在执行sql语句的时候有异常,这个时候我要捕获出来应该不是这样吧!
周药师 2010-06-18
  • 打赏
  • 举报
回复

//... your code
try
{
//代码简单 意味深长
//这里只放你打开数据库连接的一句代码,异常的时候就肯定是连接数据库错误,
ADOConnection1->Open() ;
}
catch(...)
{
//异常
}

//... your code
zhaohongbo83 2010-06-18
  • 打赏
  • 举报
回复
肯定是 try {
}
catch(...)
{

}
别说的这么简单,关键是如下
catch (EOracleError &E)
{
//需要判断数据库断开的代码
if( )

Application->ShowException(&E);
}
在上面if中如果是应为数据库连接问题,我可以继续做重连,但是判断是数据库连接失败该怎么写???
zzbinfo 2010-06-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zhouzhangkui 的回复:]
引用 3 楼 zzbinfo 的回复:
沙发没有了,座个板凳。楼上的正解


2楼的是板凳
你的(3)是地板
[/Quote]
怪只怪csdn回帖速度太快,我的电脑没有他们的快。
周药师 2010-06-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zzbinfo 的回复:]
沙发没有了,座个板凳。楼上的正解
[/Quote]

2楼的是板凳
你的(3)是地板
zzbinfo 2010-06-18
  • 打赏
  • 举报
回复
沙发没有了,座个板凳。楼上的正解
我不懂电脑 2010-06-18
  • 打赏
  • 举报
回复
同意楼上
周药师 2010-06-18
  • 打赏
  • 举报
回复

try
{
//your coude
}
catch(...)
{
//异常
}

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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