Mybatis将String作为日期存入MySQL数据库

【摘要】 错误
写一个批量更新的语句,接口里没用实体类,直接传入了Map<String, Object>:
update(List<Map<String, Object>> list);
1
在脚本里,更新一个datetime类型的字段,
UPDATE demo set time=#{time}
1
结果无法转化,出现错误:
org.mybatis.spring.My…

错误

写一个批量更新的语句,接口里没用实体类,直接传入了Map<String, Object>

update(List<Map<String, Object>> list);

  
 

在脚本里,更新一个datetime类型的字段,

UPDATE demo set time=#{time}

  
 

结果无法转化,出现错误:

org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible

  
 

解决

既然MyBatis转化不了,那么就考虑使用MySQL的日期转换函数。

  • STR_TO_DATE(str,format) :将字符串转化为日期。

示例:

SELECT STR_TO_DATE('01,5,2013','%d,%m,%Y'); -> '2013-05-01'

  
 

OK,使用这个函数将字符串格式的日期转化一下,问题解决:

UPDATE demo set time=STR_TO_DATE(#{time},'%Y-%m-%d')

  
 

文章来源: blog.csdn.net,作者:三分恶,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/sinat_40770656/article/details/110564105

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享