首页 > 数据库 >Oracle数据库升级PostgreSQL 后的踩坑记录(二)之date类型处理

Oracle数据库升级PostgreSQL 后的踩坑记录(二)之date类型处理

时间:2023-10-07 10:07:56浏览次数:35  
标签:00 PostgreSQL 适配 查询 Oracle 报错 oracle date

踩坑二:date类型处理

背景:因为业务需求,需要整个项目除了适配oracle和mysql后还需要适配PostgreSQL,在此背景下就出现了一系列的问题。

接系列一

databaseId 映射成oracle 之后问题又随之而来,由于从oracle 数据库的date类型映射成postgreSQL的timestamp字段又出现了一些查询报错的问题,我截图如下:

原始查询xml文件:

Oracle数据库升级PostgreSQL 后的踩坑记录(二)之date类型处理_PostgreSQL

报错提示(这一段没截到,我找了一个其他查询相同报错的错误信息):

Oracle数据库升级PostgreSQL 后的踩坑记录(二)之date类型处理_pgsql_02

ERROR: invalid input syntax for type numeric: "2024-05-23 00:00:00+08"

遇到上面的报错后百度后提供的解决四路是添加::timestamp,但是这样修改后有报错类型转换问题 invalid input syntax for type numeric: "149 days" 

Oracle数据库升级PostgreSQL 后的踩坑记录(二)之date类型处理_pgsql_03

最后sql增加cast搞定,最终的mybatis中xml最终sql如下

Oracle数据库升级PostgreSQL 后的踩坑记录(二)之date类型处理_PostgreSQL_04



标签:00,PostgreSQL,适配,查询,Oracle,报错,oracle,date
From: https://blog.51cto.com/u_16190206/7732725

相关文章

  • update_loc.py
      #!/usr/bin/python3'''作用:更新点位'''importosimportsysimportreimporttimeimportpymysqlimportloggingimportpandasaspdimportrequestsimportsignalfromclickhouse_driverimportClientfrommultiproce......
  • PostgreSQL 的模式匹配与正则表达式
    一、PostgreSQL实现模式匹配的方法LIKESIMILARTOPOSIX风格的正则表达式模式匹配函数substring二、LIKE操作符只有在匹配整个字符串时返回真符号描述%任意0个或任意个字符_任意一个字符\%%\__postgres=#select*fromtest_zhengze;id|......
  • This generated password is for development use only. Your security configuration
    问题描述在我加上spring-boot-starter-security的依赖之后,启动项目报出来这样的错误:问题解决在启动类的注解上,加上这么一段代码就ok啦!启动成功:......
  • ORACLE 存储过程详解
    一、定义所谓存储过程(StoredProcedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过编译后存储在数据库系统中。在使用时候,用户通过指定已经定义的存储过程名字并给出相应的存储过程参数来调用并执行它,从而完成一个或一系列的数据库操作。二、存储过程创建......
  • 将np.datetime64的时间差转为秒
    print((np.datetime64('2023-01-0200:00:00')-np.datetime64('2023-01-0100:00:00'))/np.timedelta64(1,'s'),(pd.Series(np.datetime64('2023-01-0200:00:00'))-pd.Series(np.datetime64('2023-01-0100:0......
  • access 使用Update更新记录时,提示"操作必须使用一个可更新的查询"
    原SQL:UPDATE刀具申购明细SET刀具申购明细.关闭=-1where刀具申购明细.申购数量<=(SELECTSum(Round(Nz([入库数量],0)*1,2))AS入库合计FROM采购入库tempLEFTJOIN刀具入库明细ON采购入库temp.申购ID=刀具入库明细.采购IDGROUPBY采购入库temp.申购ID)我本......
  • VMware vSphere 7 Update 3o 下载 (重大更新)
    VMwarevSphere7Update3o下载(重大更新)vCenterServer&ESXi,Dell,HPE,Cisco,LENOVO,FUJITSU,NEC,Inspur,HitachiCustomImage请访问原文链接:https://sysin.org/blog/vmware-vsphere-7-u3/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org服务器虚拟......
  • VMware vCenter Server 7.0 Update 3o 下载 (重大更新:3 项新增功能和 188 个功能修复)
    VMwarevCenterServer7.0Update3o下载(重大更新:3项新增功能和188个功能修复)集中管理vSphere环境请访问原文链接:https://sysin.org/blog/vmware-vcenter-7-u3/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgVMwarevCenterServer是一款高级服务器管理......
  • VMware ESXi 7.0 Update 3o 下载 - 领先的裸机 Hypervisor (重大更新)
    VMwareESXi7.0Update3o下载-领先的裸机Hypervisor(重大更新)VMwareESXi7.0Update3oStandard&AllCustomImageforESXi7.0U3InstallCD新增了22个服务器机型(Dell、HPE和Lenovo)和多个驱动对vSphereQuickBoot的支持,以及71个功能问题修复,属于”重大......
  • SQLite学习笔记——AND、OR运算符和UPDATE、DELETE语句
    运算符AND运算符带有WHERE字句的AND运算符语法如下SELECTcolumn1,column2,...columnNFROMtable_nameWHERE[condtion1]AND[condition2]...AND[conditionN];当满足AND连接的所有条件时,对应的列才会被选出来OR运算符带有WHERE子句的OR运算符语法如......