为Informix中的特定用户跳过触发器

问题描述 投票:0回答:1

当特定的数据库用户通过运行脚本进行更改时,是否可以绕过触发器?

在Informix中触发器的when子句中,我们可以这样做:

CREATE TRIGGER trigger_name
    update on table_name
    referencing old as olddata new as newdata
    for each row when(USER <> 'a specific database user')
    (…triggered actions…)
informix database-trigger
1个回答
0
投票

CREATE TRIGGER上Informix 12.10的文档最终指向WHEN condition描述。

只要您可以预测何时创建触发器,哪个用户就不应触发该动作,您应该能够编写类似WHEN (USER != 'exempt')的内容,但是要使其动态地工作将更加困难。您可能能够在WHEN条件下调用存储过程,该条件评估当前当前用户是否可以触发该操作。除了通过在WHEN条件下或作为触发操作使用存储过程之外,它可能无法有意义地完成。

© www.soinside.com 2019 - 2024. All rights reserved.