database compatibility assessment

ORACLE SQL*Plus EXEC/EXECUTE 元命令行 迁移 postgresql 16 怎么改

迁衡基于规则 ora.syntax.sqlplus_exec 分析 ORACLE SQL*Plus EXEC/EXECUTE 元命令行 到 postgresql 16 的兼容性、改写路径与验证建议。

兼容性判定

支持度none
严重度minor
置信度high
依据规则ora.syntax.sqlplus_exec

怎么改

CALL proc(...) / SELECT func(...)

判定说明

psql 无 EXEC 元命令;SPOOL/SET 等元命令一并排查

库侧 / 应用侧路径

库侧改造

需人工确认改造边界

应用侧改造

需人工确认改造边界

推荐路线:case_by_case。验证建议:运维/发布脚本高发:EXEC/HOST/SPOOL/WHENEVER/SET SERVEROUTPUT 是 SQL*Plus 客户端命令不是 SQL,目标端 CLI 改 CALL proc(...) 或改发布脚本流程

规则样例

EXEC prc_daily_settle('202406')
EXECUTE dbms_stats.gather_table_stats(USER, 'BILL_DETAIL')
SPOOL settle.log