MyBatis+Oracle ORA-01861: 文字与格式字符串不匹配

问题描述:

        1.前端传的值: "2022-09-28 12:09:32"  这种格式日期

        2.后端是字符串接收然后存map里了

        3.mybatis如下图

        4.报错信息:ORA-01861: 文字与格式字符串不匹配

 解决:

我是一直在用mysql的,最近这个项目才开始接触oracle,有些细节不是很熟悉,这些数据我存的时候是转成yyyy-mm-dd的格式的

但是存到数据库,它自动又变成斜杠格式了(这里用select假装一下,但是你看结果并不是横线的格式)

 !!!因为这个字段设置的是date类型 而且默认是sysdate,也就是根据你windows系统的格式有关,当然你也可以去设置系统格式或者plsql的格式,然后重启plsql

 所以你要保证比较的日期类型是一样的,可以把数据库的日期用to_char('2022/09/27 12:12:12','yyyy-mm-dd hh24:mi:ss') 转换了在比较