Java异常之--java.sql.SQLExcetion:Cannot convert value “0000-00-00 00:00:00” from column 9 to TIMESTAMP

本文目录

一、背景描述

二、错误原因

三、解决方案

方案1、修改配置文件的数据源url

方案2、直接修改数据库


一、背景描述

Spring boot 2.1.8 + mybatisplus

Cause:java.sql.SQLExcetion:Cannot convert value '0000-00-00 00:00:00' from column 9 to TIMESTAMP.

二、错误原因

当数据库中的Date类型字段值是 ‘0000-00-00’时,JDBC不能把’0000-00-00’转化为一个java.sql.Date

三、解决方案

目前有两种解决方案,后期如果有再补充,欢迎大家提出意见完善解决方案

方案1、修改配置文件的数据源url

datasource:
    url: jdbc:mysql://devl.iot.com:3306/baidu_iot_smarthome?autoReconnect=true&characterEncoding=utf-8&rewriteBatchedStatements=true&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull

方案2、直接修改数据库

数据库里datetime或者timestamp类型的字段值肯定有'0000-00-00 00:00:00'这样的,只需要要将数据库里的日期类型字段的值'0000-00-00 00:00:00'改为正常的日期时间格式'2020-05-28 15:16:38'。这样可以避免错误。

 

完结!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章