데이터베이스 타임즈 업데이트 오류: Data truncation: Incorrect datetime value:
2609 단어 오류 및 예외
Error updating database. Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect datetime value: '1970-01-01 08:00:00.0' for column 'begin_time' at row 1
### The error may involve com.stylefeng.guns.rest.common.persistence.dao.MoocUserTMapper.updateById-Inline
### The error occurred while setting parameters
### SQL: UPDATE mooc_user_t SET nick_name=?, user_sex=?, birthday=?, email=?, user_phone=?, address=?, biography=?, life_state=?, begin_time=?, update_time=? WHERE UUID=?
### Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect datetime value: '1970-01-01 08:00:00.0' for column 'begin_time' at row 1
; ]; Data truncation: Incorrect datetime value: '1970-01-01 08:00:00.0' for column 'begin_time' at row 1; nested exception is com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect datetime value: '1970-01-01 08:00:00.0' for column 'begin_time' at row 1
at org.springframework.jdbc.support.SQLStateSQLExceptionTranslator.doTranslate(SQLStateSQLExceptionTranslator.java:104)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:72)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.springframework.jdbc.support.AbstractFallbackSQLExceptionTranslator.translate(AbstractFallbackSQLExceptionTranslator.java:81)
at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:73)
at org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:446)
at com.sun.proxy.$Proxy93.update(Unknown Source)
at org.mybatis.spring.SqlSessionTemplate.update(SqlSessionTemplate.java:294)
at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:63)
인터넷에서 많은 답을 찾았는데 방문자가 가장 많은 것은 업그레이드
mysql-connection-java-jar
버전이었다. 그러나 나의jar는 이미 최신 버전이어서 다른 방법을 찾았다.오랜 시간이 걸려서 마침내 해결되었다.오류 원인: 데이터베이스에 있는 시간 유형의 원인으로 인해 이런 오류가 발생했습니다.datetime
YYYY-MM-DD HH:MM:SS
형식으로 검색하고 표시DATETIME
합니다.지원되는 범위는 1000-01-01 00:00:00
부터 9999-12-31 23:59:59
까지입니다.TIMESTAMP
값이 지원하는 범위1970-01-01 08:00:01
에서 2038-01-19 11:14:07
에 저장하면 TIMESTAMP
에 이 범위가 없으면 이 오류를 보고할 수 있다.해결 방법: mysql
시간 유형은 timestamp
에서 datetime
로 변경하면 됩니다.