ORACLE PL/SQL %ROWTYPE 行类型锚定 迁移 postgresql 16 怎么改

迁衡基于规则 ora.plsql.rowtype_anchor 分析 ORACLE PL/SQL %ROWTYPE 行类型锚定 到 postgresql 16 的兼容性、改写路径与验证建议。

兼容性判定

公开资料依据 · 建议 PoC 复核
支持度partial
严重度major
置信度medium
依据规则ora.plsql.rowtype_anchor

怎么改

表/视图锚点评估保留;游标或包游标锚点改显式 RECORD/复合类型

判定说明

目标支持部分 %ROWTYPE 引用,但 cursor/package cursor 域不等价;建议 PoC 复核列投影与顺序

库侧 / 应用侧路径

库侧改造

可行:先解析锚点种类;表/视图映射行类型,游标或包游标建立显式复合类型

应用侧改造

可行:跨层传递的行记录可改应用 DTO 并显式列映射

推荐路线:db_side。验证建议:建议 PoC 复核列顺序、不可见列、游标投影、默认值与约束边界

规则样例

参考来源

相关改造点

社群/联系

迁移卡住时,带着案例找人复核

迁移路上遇到具体问题?微信群、1v1 咨询与邮箱,随时找得到人。

微信交流群 微信二维码

扫码添加微信,邀您加入交流群;亦可搜索微信号 prejudice_me。

邮箱咨询

m01dm01db01@foxmail.com

发源库、目标库、代码规模和已脱敏案例短链,便于估算改造工作量。