database compatibility assessment

ORACLE BULK COLLECT 批量取数 迁移 postgresql 16 怎么改

迁衡基于规则 ora.plsql.bulk_collect 分析 ORACLE BULK COLLECT 批量取数 到 postgresql 16 的兼容性、改写路径与验证建议。

兼容性判定

支持度none
严重度major
置信度high
依据规则ora.plsql.bulk_collect

怎么改

array_agg 聚合或整体 SQL 化

判定说明

多数 BULK 循环可改一条 SQL;LIMIT 分批语义需保留控内存

库侧 / 应用侧路径

库侧改造

可行:改数组聚合或整体 SQL 化(一条语句替代取数循环),保留 LIMIT 分批控内存

应用侧改造

可行:批量取数逻辑上移应用层分页/流式读取

推荐路线:db_side。验证建议:分批边界用例(恰好整除/余数批)结果一致;大数据量内存峰值实测

规则样例