兼容性判定
支持度partial
严重度major
置信度high
依据规则ora.plsql.trigger_new_old
怎么改
需按命中位置逐条评估改写
判定说明
A 兼容触发器语法面待真库验证;兜底为 PG 风格触发器函数 + NEW./OLD.
库侧 / 应用侧路径
库侧改造
需人工确认改造边界
应用侧改造
需人工确认改造边界
推荐路线:case_by_case。验证建议:PG 系触发器函数内为 NEW./OLD.(无冒号)且触发器体要拆成独立函数;触发器整体改造时用"插入→触发→断言审计行"用例回归,REFERENCING 重命名形态纳入触发器族检测
规则样例
INSERT INTO serv_audit(serv_id, old_status, new_status) VALUES (:OLD.SERV_ID, :OLD.STATUS, :NEW.STATUS)
UPDATE acct_balance SET balance = :new.BALANCE WHERE acct_id = :new.ACCT_ID
CREATE OR REPLACE TRIGGER trg BEFORE UPDATE ON t REFERENCING OLD AS o NEW AS n FOR EACH ROW BEGIN NULL; END;