database compatibility assessment

ORACLE DBMS_RANDOM 随机数调用(过程体内) 迁移 oceanbase 4.3 oracle 模式 怎么改

迁衡基于规则 ora.pkg.dbms_random, ora.func.dbms_random 分析 ORACLE DBMS_RANDOM 随机数调用(过程体内) 到 oceanbase 4.3 oracle 模式 的兼容性、改写路径与验证建议。

兼容性判定

真机验证:oceanbase 4.2.5.7 · 官方系统包清单收录 DBMS_RANDOM;接口覆盖面(SEED 可重现语义)真库验证后可收敛 full |实测2026-07-09(v4.2.5.7,172.16.0.146): DBMS_RANDOM EXPLAIN 通过
支持度partial
严重度minor
置信度high
依据规则ora.pkg.dbms_random, ora.func.dbms_random

怎么改

需按命中位置逐条评估改写

判定说明

官方系统包清单收录 DBMS_RANDOM;接口覆盖面(SEED 可重现语义)真库验证后可收敛 full |实测2026-07-09(v4.2.5.7,172.16.0.146): DBMS_RANDOM EXPLAIN 通过

库侧 / 应用侧路径

库侧改造

需人工确认改造边界

应用侧改造

需人工确认改造边界

推荐路线:case_by_case。验证建议:VALUE/STRING 可用目标端随机函数组合改写;若业务用 SEED 做可重现随机(测试数据生成),目标端等价性需专门确认

规则样例

SELECT DBMS_RANDOM.VALUE(1, 100) FROM dual
SELECT DBMS_RANDOM.STRING('X', 8) FROM dual
SELECT ROUND(sal) FROM emp