如何捕捉数据库的错误?(100分)

J

jinghj

Unregistered / Unconfirmed
GUEST, unregistred user!
我想编写一个通用的函数来捕捉数据库的错误并出现中文提示信息,
在3层开发中我使用以下代码,在C/S方式下怎么写呢?
procedure ShowDBErrorMessage(E:edbclient);
begin
case E.ErrorCode of
1: showmessage('错误:'+#13#10#13#10+' 关键词代码重复!可能其他用户已增加或修改此记录,可刷新数据察看。');
9729: showmessage('错误:'+#13#10#13#10+' 关键词代码重复!');
9732: showmessage('错误:'+#13#10#13#10+' 请填写必须填写的项目!');
9733: showmessage('错误:'+#13#10#13#10+' 保存时,应先保存与此记录相关信息记录!');
9734: showmessage('错误:'+#13#10#13#10+' 删除前应保证已删除与此记录相关信息记录!,请刷新数据');
else
begin
showmessage('错误代码:'+inttostr(E.ErrorCode)+' 错误信息:'+E.Message );
end;
end
end;
 
在Form上放一个TApplicationEvents控件,在它的OnException事件里——
procedure TForm1.ApplicationEvents1Exception(Sender: TObject;
E: Exception);
begin
if E is EDBClient then ShowDBErrorMessage(E as EDBClient)
else ShowMessage(E.Message);
end;
 
这方法我用过很多次了,请注意我要显示的是中文信息
 
找到定义这些错误信息的文件,把错误信息汉化...
 
为什么EDBCLIENT有ERRORCODE,其他的却只有MESSAGE?
 
进库前先查询一次。得出结果
 
提问者:
如果你还要继续讨论请定期提前你的帖子,如果不想继续讨论请结束帖子。
请认真阅读大富翁论坛规则说明 http://www.delphibbs.com/delphibbs/rules.asp
 
接受答案了.
 

Similar threads

D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
742
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
顶部