baochangjin 发表于 2011-11-10 19:26

informix 9.4下的触发器问题求助,在线等待。

我现在一张config表中有两个字段name和value
现在这张表有两条记录
name   value
a         1   
b         0

本来针对这个config表有一个触发器,作用是当a记录对应的value值被修改成0时,我更新了另外一张表aaa的一条记录。这个已经实现了。
现在我需要再另外创建一个触发器,作用是当b记录对应的value值被修改成1时,需要插入一条记录到aaa表中。

在informix 11下是可以通过创建两个触发器来实现的。
但是还需要支持informix 9的环境
不过informix 9环境下只能支持一张表建一个触发器。
这个就比较纠结了。
各位大侠们有没有什么好的办法呀?

附上原来的触发器代码:
create trigger test
update of value on config
referencing OLD AS pre NEW AS post
for each row when (post.name='a')
(
    update aaa set we='wee' where qwe='123' and (post.value = 0),
    update aaa set we='123' where qwe='345' and (post.value != 0)
);

目前想法是在一个触发器里面集合这两个功能,就需要在触发器里面增加条件判断了。
就是当更新a记录的值时候,执行update;当更新b记录值的时候,执行inset语句。

问题就是如何在触发器里增加类似if的条件判断呢?

希望我的问题描述的清楚了,能够让大侠们理解并帮忙解决。
多谢多谢!
非常紧急啊,在线等待。

baochangjin 发表于 2011-11-10 23:13

没有人帮忙啊!!!哭啊

3sane 发表于 2011-11-11 09:58

回复 2# baochangjin


    同情,好久没有玩触发器,也不想查了,建议把 = 'a' 改成in ('a','b')或者加上or试试?
页: [1]
查看完整版本: informix 9.4下的触发器问题求助,在线等待。