兼容性判定
公开资料依据 · 建议 PoC 复核支持度none
严重度major
置信度medium
依据规则ora.plsql.associative_array
怎么改
hstore/jsonb 或数组方案
判定说明
稀疏下标/字符串键/FIRST-NEXT 遍历需重设计
库侧 / 应用侧路径
库侧改造
可行:目标端有 INDEX BY 兼容语法时保留(稀疏/字符串键边界真库核对);否则改稠密数组或临时表,FIRST/NEXT 遍历改循环
应用侧改造
可行:查表映射类逻辑上移应用层字典缓存
推荐路线:db_side。验证建议:稀疏下标与字符串键用例;DELETE 元素后的遍历行为与原逻辑比对
规则样例
参考来源
- https://github.com/orafce/orafce/blob/841978f4ec493492bb57fd12415959695cae1b64/README.asciidoc#L9-L267
- https://github.com/orafce/orafce/blob/841978f4ec493492bb57fd12415959695cae1b64/README.asciidoc#L269-L546
- https://github.com/orafce/orafce/blob/841978f4ec493492bb57fd12415959695cae1b64/README.asciidoc#L786-L943
- https://docs.oracle.com/en/database/oracle/oracle-database/19/lnpls/plsql-collections-and-records.html
相关改造点
- ORACLE → PostgreSQL 16 + orafce 全部改造点
- PostgreSQL 16 + orafce 兼容性总览
- ORACLE 迁移国产库总览
- ORACLE ADD_MONTHS 函数 迁移 PostgreSQL 16 + orafce 怎么改
- ORACLE ALTER SESSION SET 会话参数 迁移 PostgreSQL 16 + orafce 怎么改
- ORACLE ANYDATA 动态类型列 迁移 PostgreSQL 16 + orafce 怎么改
- ORACLE ASCIISTR Unicode 转义函数 迁移 PostgreSQL 16 + orafce 怎么改
- ORACLE AT TIME ZONE 时区表达式 迁移 PostgreSQL 16 + orafce 怎么改
- ORACLE AUTHID 执行者/定义者权限模式 迁移 PostgreSQL 16 + orafce 怎么改