Derby 错误 54038:超出了嵌套触发器的最大深度



我正在尝试触发一个触发器,该触发器在更新或插入后将owner_notif_sta设置为 null,如果owner_id为 null,则owner_notif_sta。owner_id和owner_notif_sta都来自同一个表。

触发器:

CREATE TRIGGER check_owner
AFTER UPDATE OF owner_notif_sta ON risk
REFERENCING OLD AS EXISTING
FOR EACH ROW MODE DB2SQL
    UPDATE risk SET owner_notif_sta = NULL
    WHERE owner_id IS NULL;

我尝试触发的更新:

UPDATE RISK SET owner_notif_sta = 'helloo' WHERE risk_id = 'ICT123';

并且owner_id为空(触发更新时未填充)

并且我收到以下错误:错误 54038:超出了嵌套触发器的最大深度。

提前致谢

稍微更改 UPDATE 语句以排除已经owner_notif_sta为 null 的行怎么样:

CREATE TRIGGER check_owner
AFTER UPDATE OF owner_notif_sta ON risk
REFERENCING OLD AS EXISTING
FOR EACH ROW MODE DB2SQL
    UPDATE risk 
       SET owner_notif_sta = NULL
     WHERE owner_id IS NULL
       AND owner_notif_sta IS NOT NULL;

最新更新