delphi捕获oracle异常

oralce数据库有一字段DEPTNAME我设置了惟一约束。在delphi程序中当我在字段中输入与DEPTNAME内容相同时,就会弹出‘部门名称重复,请重新输入’的警告,... oralce数据库有一字段DEPTNAME我设置了惟一约束。在delphi程序中当我在字段中输入与DEPTNAME内容相同时,就会弹出‘部门名称重复,请重新输入’的警告,但却弹出如图警告。我想问如何利用delphi捕获该约束警告,delphi中我捕获错误这样的:
with ADOQuery do
begin
Close;
SQL.Clear;
SQL.Text:='insert into user_group(DEPTNAME) values(:DEPTNAME)';
Parameters.ParamByName('DEPTNAME').Value:=Trim(edt10.Text);
try
ExecSQL;
except
on E:EOleException do
begin
ShowMessage(E.Message);
Exit;
end;
end;
lbl14.Caption:='部门添加成功';
end;
我这样做还是弹出如下错误警告,大家帮我看下,哪里错了,在此谢过各位,测试成功必会加分。
我希望大家帮我看下代码中哪些地方修改下即可捕获异常。
展开
 我来答
叮当猫武汉
2010-04-23 · TA获得超过3739个赞
知道大有可为答主
回答量:744
采纳率:0%
帮助的人:0
展开全部
这是IDE调试环境下的系统提示. 你直接执行编译后的Exe文件试试

with ADOQuery do
begin
Close;
SQL.Clear;
SQL.Text:='insert into user_group(DEPTNAME) values(:DEPTNAME)';
Parameters.ParamByName('DEPTNAME').Value:=Trim(edt10.Text);
try
ExecSQL;
except
ShowMessage('部门名称重复,请重新输入!');
Exit;
end;
lbl14.Caption:='部门添加成功';
end;
glaciersoft
2010-04-23 · TA获得超过288个赞
知道小有建树答主
回答量:340
采纳率:0%
帮助的人:334万
展开全部
你这样处理,在IDE中会弹出这个窗口,在实际运行的时候则是直接弹出对话框,显示的消息是:"ORA-0001......."那一句
如果你想捕获后做处理,比如翻译成易读的提示,则最好是加个TApplicationEvents,在其OnException中即可处理错误消息(整个应用程序的错误都会被捕获)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
seanpim
2010-04-23 · TA获得超过122个赞
知道小有建树答主
回答量:538
采纳率:100%
帮助的人:116万
展开全部
编译状态还是会出现错误提示的,你执行编译好的EXE文件就好了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旅正信0k
2010-04-23 · TA获得超过142个赞
知道答主
回答量:115
采纳率:0%
帮助的人:50.2万
展开全部
这个主要问题是要查到这个异常的类型和错误号,很显然不是EOleException
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式