兼容性判定
真机验证:opengauss 6.0.5 · 实测2026-07-09(og6.0.5): NUMTODSINTERVAL 支持 DAY/HOUR/MINUTE;NUMTOYMINTERVAL(integer,'YEAR') 函数不存在支持度partial
严重度minor
置信度high
依据规则ora.func.interval_conversion
怎么改
需按命中位置逐条评估改写
判定说明
实测2026-07-09(og6.0.5): NUMTODSINTERVAL 支持 DAY/HOUR/MINUTE;NUMTOYMINTERVAL(integer,'YEAR') 函数不存在
库侧 / 应用侧路径
库侧改造
需人工确认改造边界
应用侧改造
需人工确认改造边界
推荐路线:case_by_case。验证建议:常见于 INTERVAL 分区定义与日期偏移计算;PG 系改 make_interval 或 interval 字面量乘法,注意月/日不可混算的 Oracle 约束在目标端放宽后行为变化
规则样例
SELECT SYSDATE + NUMTODSINTERVAL(30, 'MINUTE') FROM dual
SELECT NUMTOYMINTERVAL(1, 'MONTH') FROM dual
SELECT SYSDATE + 30 FROM dual