美文网首页
mysql:Zero date value prohibited

mysql:Zero date value prohibited

作者: 爱的旋转体 | 来源:发表于2021-01-03 20:33 被阅读0次

1.mysql查询时报以下错误:

org.springframework.dao.TransientDataAccessResourceException: Error attempting to get column 'pay_time' from result set.  Cause: java.sql.SQLException: Zero date value prohibited; 

2.原因:
数据库中的数据有datetime类型的值为'0000-00-00 00:00:00'。
3.解决办法:
在数据库连接url后面加上zeroDateTimeBehavior=CONVERT_TO_NULL

spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test?useSSL=false&Unicode=true&characterEncoding=UTF-8
&serverTimezone=Asia/Shanghai&zeroDateTimeBehavior=CONVERT_TO_NULL
    username: test
    password: test
    driver-class-name: com.mysql.cj.jdbc.Driver

4.zeroDateTimeBehavior的值一共有三种:

  • exception:默认值,会抛出异常。
  • CONVERT_TO_NULL:将出错的那个0000-00-00字段的值转为null。
  • round:替换成最近的日期,转成0001-01-01 00:00:00

相关文章

网友评论

      本文标题:mysql:Zero date value prohibited

      本文链接:https://www.haomeiwen.com/subject/bsjpoktx.html