兼容性判定
真机验证:opengauss 6.0.5 · 实测2026-07-09(og6.0.5): INTERVAL YEAR TO MONTH/DAY TO SECOND 可建表和插入;YEAR TO MONTH 取回显示为 days(1-2 -> 425 days),日历月语义需复核支持度partial
严重度minor
置信度high
依据规则ora.type.interval_columns
怎么改
需按命中位置逐条评估改写
判定说明
实测2026-07-09(og6.0.5): INTERVAL YEAR TO MONTH/DAY TO SECOND 可建表和插入;YEAR TO MONTH 取回显示为 days(1-2 -> 425 days),日历月语义需复核
库侧 / 应用侧路径
库侧改造
需人工确认改造边界
应用侧改造
需人工确认改造边界
推荐路线:case_by_case。验证建议:Oracle 是两个独立受限类型;PG 系是单一 interval 类型——迁移后"年月/日时分开存"的约束消失,混合单位运算不再报错,依赖该约束的校验逻辑需业务确认
规则样例
CREATE TABLE t (warranty INTERVAL YEAR(2) TO MONTH)
CREATE TABLE t (elapsed INTERVAL DAY TO SECOND)
SELECT SYSDATE + INTERVAL '1' HOUR FROM dual