社区
DB2
帖子详情
如果触发器执行时发生异常,如何进行错误处理?
Olyra
2011-05-20 11:53:17
如主键冲突,表不存在,不允许插入NULL值等等!!!
就是说如果触发执行时发生异常,我可以捕获异常,并写错误日志到一张表中。
...全文
798
10
打赏
收藏
如果触发器执行时发生异常,如何进行错误处理?
如主键冲突,表不存在,不允许插入NULL值等等!!! 就是说如果触发执行时发生异常,我可以捕获异常,并写错误日志到一张表中。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
zhaojianmi1
2011-05-21
打赏
举报
回复
那么,在程序里写出来,发生触发器异常时,继续执行
zhaojianmi1
2011-05-20
打赏
举报
回复
这个估计得在代码里捕获
Olyra
2011-05-20
打赏
举报
回复
我不能让触发器发生的错误影响别的事务。简单的来说,如果操作某表,而使触发器执行,如果触发器抛出异常,则忽略此错误或将此错误处理掉,不影响整个事务。否则麻烦大了。
zhaojianmi1
2011-05-20
打赏
举报
回复
触发器是被动触发,总得有外部操作,你在外部操作的时候就可以捕获了
比如我在存储过程里有个insert into 语句不满足触发器的约束,那么就在这个语句这里捕获
可能每种数据库都有各自特点
Olyra
2011-05-20
打赏
举报
回复
蛋痛的db2, 不知道是我不熟悉, 还是db2不给力。
oracle的触发器可以很方便的进行异常处理.
Olyra
2011-05-20
打赏
举报
回复
触发器抛出异常,哪个外部程序去捕获。触发器是被动触发才会执行,这时谁会去捕获异常啊!!!
zhaojianmi1
2011-05-20
打赏
举报
回复
对,在触发器里不能写handler,这个市在存储过程里写的
触发器本身不能捕获,他只把异常抛出来,需要通过外部的程序来捕获
Olyra
2011-05-20
打赏
举报
回复
可是在触发器不能用handler
再说,你的语句也写错了,应该是
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION
zhaojianmi1
2011-05-20
打赏
举报
回复
存储过程里declare exception continue handler
其他的程序里,就捕获异常
Olyra
2011-05-20
打赏
举报
回复
关键是怎么捕获?
MySQL
触发器
Re: MySQL
触发器
=============================#
触发器
概念
触发器
,顾名思义,就是当
执行
某个事件的
时
候触发另一个事件的
执行
!数据库中的
触发器
是和表关联的特殊的存储过程,它可以在插入、删除或修改该表表中的数据
时
触发
执行
,它比数据库本身标准的功能有更精细和更复杂的数据控制能力。 # 数据库
触发器
作用: 1) 安全性:可以基于数据库的值,限制或允许用户的某种操作 2) 审计功能:可以跟踪用户对数据库的操作等 3) 实现复杂的数据完整性规则:
触发器
可产生比CHECK约束更为复杂的限制 4) 实现复杂的非标准的数据库相关完整性规则(针对六个约束) 5) 同步实
时
地复制表中的数据。 6) 自动计算数据值:如果数据的值达到了一定的要求,则
进行
特定的处理。-------------------------------------------------------------------------------------------------
ORACLE
异常
错误处理
,
触发器
异常
编写,最全面的
异常
信息处理
本篇主要内容如下: 5.1
异常
处理概念 5.1.1预定义的
异常
处理 5.1.2非预定义的
异常
处理 5.1.3用户自定义的
异常
处理 5.1.4用户定义的
异常
处理 5.2
异常
错误传播 5.2.1在
执行
部分引发
异常
错误 5.2.2在声明部分引发
异常
错误 5.3
异常
错误处理
编程 5.4在PL/SQL中使用SQLCODE,SQLERRM
异常
处理函数 即使是写得最好的PL/SQL程序也会遇到错误或未预料到的事件。一个优秀的程序都应该能够正确处理各种出错情况,并尽可能...
oracle
触发器
函数错误信息,Oracle中函数,过程和
触发器
等的错误
异常
处理
一:捕获错误
异常
1:通过捕获Oralce系统中的预定义的错误
异常
。2:通过捕获自定义的错误
异常
。二:捕获错误
异常
的方法在Oralce数据库对象体内。1:定义错误
异常
变量User_Exception EXCEPTION;2: Begin--
执行
Sql语句Exceptionwhen others thennull;End;实例:create or replace procedure P_User_P...
oracle数据库
触发器
异常
捕获,(interbase之九)intebase的存储过程、
触发器
以及事件、
异常
-数据库专栏,其他相关...
(interbase之九)intebase的存储过程、
触发器
以及事件、
异常
原创 kylixyqh——————————————————————-说明:本来我想把《interbase中文开发指南》中有关存储过程、
触发器
的章节全部照搬过来,但考虑到存储过程、
触发器
的重要性,相信大部分人已经
进行
了相当的研究,因此,为了节约篇幅和
时
间,我把其中的定义、变量声明、语句语法等大量内容全部删除;其中,事务处理请参...
oracle
触发器
怎么返回处理错误到客户端
触发器
不能直接返回错误消息给客户端,但你可以使用
异常
处理机制来捕获
触发器
中的错误,并将错误消息存储在数据库中或通过其他方式返回给客户端。根据你的具体需求和应用程序架构,选择适合的方法来实现这在Oracle中,RAISE_APPLICATION_ERROR函数用于引发一个应用程序错误,并返回一个错误消息给客户端。在上面的示例中,如果some_condition不满足,
触发器
将引发一个
异常
,并使用RAISE_APPLICATION_ERROR函数返回一个自定义的错误消息。-- 你的
触发器
逻辑。
DB2
5,889
社区成员
11,654
社区内容
发帖
与我相关
我的任务
DB2
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
复制链接
扫一扫
分享
社区描述
IBM DB2 是美国IBM公司开发的一套关系型数据库管理系统,它主要的运行环境为UNIX(包括IBM自家的AIX)、Linux、IBM i(旧称OS/400)、z/OS,以及Windows服务器版本
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章