有关数据库得一个问题

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

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

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

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

回复
KingSunSha 2001-09-08
数据库在发生异常操作的时候,肯定会返回错误代码,你把错误代码翻译成用户能理解的内容,做成一个数据字典,就能比较简单的处理了
回复
相关推荐
发帖
数据库及相关技术
创建于2007-08-02

1158

社区成员

C++ Builder 数据库及相关技术
申请成为版主
帖子事件
创建了帖子
2001-09-08 06:51
社区公告
暂无公告