如何捕捉异常类

3CL 2003-01-20 07:07:42
在delphi中如何象java一样捕捉不同的异常类,如提交数据时,在try语句中分别捕捉数据库没有处于打开状态的异常和不在edit模式的异常
...全文
33 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
AaronChengBJ 2003-01-21
  • 打赏
  • 举报
回复
它的数据库异常类都是在Edatabaseerror中处理的。用try只能截获到Edtabaseerror,如果你需要捕捉“数据库没有处于打开状态的异常和不在edit模式的异常”,我想:

if table1.active=false then
databaseerror('数据集没有打开',table1);
if (table1.state<>dsedit)or(table1.state<>dsinsert) then
databaseerror('数据集没有处于编辑或插入状态',table1);
table1.post;

好像没有什么意义


gzyzljk 2003-01-21
  • 打赏
  • 举报
回复
try
语句;
except
on 异常类 do
处理;
else
处理;
end;
AaronChengBJ 2003-01-21
  • 打赏
  • 举报
回复
因为delphi内部就是这样处理的,只不过显示的异常信息是英文罢了
你只需使用
try
...

except
on e:Edatabaseerror do
showmessage(e.message);
end;
能够截获所有的Edatabaseerror的异常

2,496

社区成员

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

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