谁引发了我的触发?

时间:2013-02-13 21:24:49

标签: database triggers db2 sql-execution-plan

我的情况:
我想创建一个使用db2中真正敏感的表的历史表。
通用用户通过一些静态计划(已编译)访问该表。

我想要的是什么:
我需要记录时间,世界卫生组织对此进行了更新。

我计划使用触发器,因为它似乎符合我的需要,但我仍然不知道如何触发“触发触发器”的触发器。 我的意思是,要知道调用静态计划的批处理或可执行文件。

注意:由于每个可执行文件都使用不同的计划,因此可以获得某种计划ID。

可行吗?我该怎么办?

2 个答案:

答案 0 :(得分:1)

有一个名为USER的特殊DB2寄存器,用于存储授权标识的信息。您可以在插入或更新Trigger查询中使用TIMESTAMP的相同方式使用它。

SET HIST_LAST_UPDATE_USER = USER;

如果您对架构没问题,那么您也可以使用CURRENT SCHEMA或CURRENT SQLID。

答案 1 :(得分:1)

如果其他人需要它,我能找到方法:

GETVARIABLE(SYSIBM.SYSPLAN);