oracle与tidb时间格式化函数不兼容简述

由Oracle迁移到TiDB后,时间格式会出现不兼容的情况。 Oracle用的时间格式化函数为TO_DATE,转换到TiDB的时间格式化函数为STR_TO_DATE。在Oracle中,TO_DATE(#{APLY_DT},'yyyy-MM-dd'),入参APLY_DT传入'20230101'时,由于Oracle兼容性较好,可以正常保存;但在TiDB中,STR_TO_DATE(#{APLY_DT},'%Y-%m-%d')只能接受APLY_DT传入'2023-01-01'的格式,传入'20230101'则会直接报错,而P2员工渠道调用P32520616时所用时间控件传入的时间格式为'20230101',该格式传到后端会导致报错。

解决方案:

全局搜索项目中的STR_TO_DATE函数,并按如下方式进行整改:STR_TO_DATE(#{APLY_DT},'%Y-%m-%d')的写法直接改成STR_TO_DATE(#{APLY_DT})即可,按上述写法,TiDB可兼容入参为'20230101'、'2023-01-01'、'2023/01/01'等格式,并且可以成功将转换后的值保存到TiDB的date或者datetime字段中。

相关推荐
2501_9142459321 小时前
Go语言怎么做并发下载_Go语言多协程下载教程【技巧】
jvm·数据库·python
a9511416421 天前
mysql如何创建安全的用户账户_mysql权限配置方法
jvm·数据库·python
摇滚侠1 天前
短信验证码登录 Redis实战 黑马程序员
数据库·redis·缓存
qq_372906931 天前
Flask应用Python内存占用高怎么办_使用内存分析工具排查对象泄露
jvm·数据库·python
HHHHH1010HHHHH1 天前
怎么在MongoDB中追踪一个Document的具体流转路径_从Chunk分布到迁移历史日志分析
jvm·数据库·python
InfinteJustice1 天前
SQL窗口函数解决多维排名问题_组合排序实战
jvm·数据库·python
HHHHH1010HHHHH1 天前
SymPy中正确处理含整数参数的三角函数定积分:避免n=0特例干扰结果
jvm·数据库·python
一只大袋鼠1 天前
MyBatis 从入门到实战(二):代理 Dao 开发与多表关联查询
java·开发语言·数据库·mysql·mybatis
m0_716430071 天前
JavaScript中类属性与原型属性的覆盖规则详解
jvm·数据库·python
lzksword1 天前
C++ Builder XE Idhttp下载网页数据
数据库