免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3741 | 回复: 4
打印 上一主题 下一主题

请问DB2里面可以这样创建触发器吗? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-07-25 21:27 |只看该作者 |倒序浏览
CREATE  TRIGGER TR_TEST AFTER INSERT OR UPDATE OR DELETE ON TB_TEST FOR EACH ROW
DECLARE
  p_count integer;
BEGIN
  IF INSERTING THEN
     SELECT COUNT(*) INTO p_count FROM AAAA WHERE ROW_ID = NEW.ID;
     IF p_count = 0 THEN
        INSERT INTO AAAA
     END IF;
  ELSIF UPDATING THEN
     UPDATE AAAA SET ID =  .........
  ELSE
     DELETE FROM AAAA WHERE ID = ......
  END IF;
END;
/////////////////////////////////以上在ORACLE上面可以创建,在DB2里面如何创建?谢谢!

论坛徽章:
0
2 [报告]
发表于 2007-07-25 21:31 |只看该作者
还是必须要针对insert update delete 三种不同的操作写三个触发器??

论坛徽章:
11
数据库技术版块每日发帖之星
日期:2016-06-25 06:20:00数据库技术版块每日发帖之星
日期:2016-06-24 06:20:00数据库技术版块每日发帖之星
日期:2016-05-03 06:20:00数据库技术版块每日发帖之星
日期:2016-04-21 06:20:00数据库技术版块每日发帖之星
日期:2016-01-23 06:20:00数据库技术版块每日发帖之星
日期:2015-12-03 06:20:00综合交流区版块每周发帖之星
日期:2015-12-02 15:03:53数据库技术版块每日发帖之星
日期:2015-10-19 06:20:00数据库技术版块每日发帖之星
日期:2015-08-20 06:20:002015年辞旧岁徽章
日期:2015-03-03 16:54:15数据库技术版块每日发帖之星
日期:2016-07-30 06:20:00
3 [报告]
发表于 2007-07-25 21:40 |只看该作者
1.2创建触发器
Oracle:
CREATE OR REPLACE TRIGGER connect_audit_trg
BEFORE INSERT ON connect_audit
FOR EACH ROW
BEGIN
:new.timestamp := SYSDATE;
END;

DB2:
CREATE TRIGGER connect_audit_trg
NO CASCADE BEFORE INSERT ON connect_audit
REFERENCING NEW AS n
FOR EACH ROW
MODE DB2SQL
BEGIN ATOMIC
SET n.timestamp = CURRENT TIMESTAMP;
END

注:DB2不支持replace,No cascade对DB2的before触发器是必须的,它指明了该触发器的触发动作不影响其他触发器。MODE DB2SQL是必须的。

找个手册看看吧!

论坛徽章:
0
4 [报告]
发表于 2007-07-26 09:19 |只看该作者
我是想问  AFTER INSERT OR UPDATE OR DELETE  这种写法在DB2里面如何实现,
以及  IF INSERTING THEN 对于状态的判断 db2里面这么判断?
谢谢!

论坛徽章:
0
5 [报告]
发表于 2007-10-07 17:33 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP