在 DB2 中创建规则

Creating rules in DB2

在 postgres 中 SQL 您可以创建将在插入时激活的规则。

所以我可以制定这样的规则,它会在每次满足给定条件时激活:

CREATE OR REPLACE RULE person_insert_id_change AS
ON INSERT TO person 
WHERE id = 127777
DO INSTEAD 
INSERT INTO person VALUES (1577761, new.firstname, new.secondname, new.dob);

有没有在 DB2 中实现类似的东西??

非常感谢!

在这种特殊情况下,BEFORE INSERT 触发器应该执行您想要的操作:

CREATE OR REPLACE TRIGGER person_insert_id_change 
BEFORE INSERT ON person 
REFERENCING NEW AS n
FOR EACH ROW
WHEN n.id = 127777
BEGIN ATOMIC
  SET n.id = 1577761;
END

P.S。未测试,显然