MYSQL MySQL MAKETIME 时长/时间构造 迁移 PostgreSQL 16 适配说明

迁衡基于规则 my.func.maketime 分析 MYSQL MySQL MAKETIME 时长/时间构造 到 PostgreSQL 16 的兼容性、改写路径与验证建议。

兼容性判定

公开资料依据 · 建议 PoC 复核
支持度none
严重度major
置信度medium
依据规则my.func.maketime

迁移建议

日内时间用 make_time;可超 23 小时的时长用 make_interval

判定说明

无 MAKETIME;MySQL TIME 可表示长时长而目标 time 不可,建议 PoC 复核值域

库侧 / 应用侧路径

库侧改造

可行:按值域区分 time 与 interval 并显式构造

应用侧改造

可行:时长计算可移应用 Duration 类型

推荐路线:case_by_case。验证建议:负值、超过 23 小时、小数秒与非法分秒输入对照

规则样例

SELECT MAKETIME(12,30,0)
SELECT MAKETIME(hours_worked, minutes_worked, 0) FROM shift

参考来源

相关改造点

技术支持

微信交流群 微信二维码

微信:prejudice_me