有关数据库得一个问题

mikesome 2001-09-08 06:51:17
应用程序自身会抛出很多异常,我怎么去catch这些异常,然后以自己得形式解决
比如数据库中得某表得某字段有not null ,unique的限制
当用户的输入违反这些限定,程序自身会抛出异常并解决异常,由于其解决异常的
输出对话框晦涩难懂,所以一般来说开发者得自己重新去接收异常解决
这些异常怎么接收????我该Catch什么东西,才会catch到自己想要得
...全文
60 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mikesome 2001-09-28
  • 打赏
  • 举报
回复
两位,谢了
TR@SOE 2001-09-08
  • 打赏
  • 举报
回复
一般而言,在数据库操作时可能引起异常的操作大概有:post, delete。

对于前者,主要的错误是:主键重复,外键不存在,对非重复索引出现重复项,对非空字段出现空等。
对于后者,主要是:删除了主键从而使外键失去参照等。

我一般的做法,是形如:
try
{
Table1->Post();
}
catch (EDBEngineError &E)
{
...
}
然后根据ErrorCode判断是什么错误。这在处理要求不多的时候是可行的。

如果你预见到这样的处理会很多,不妨自己派生一个类,将数据库错误重新封装,然后截获相应的EDBEngineError后,抛出自己的异常类即可。

KingSunSha 2001-09-08
  • 打赏
  • 举报
回复
数据库在发生异常操作的时候,肯定会返回错误代码,你把错误代码翻译成用户能理解的内容,做成一个数据字典,就能比较简单的处理了

1,178

社区成员

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

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