获得例如"无法将值转换为00:00:00"从第12列到TIMESTAMP的异常"

Rak*_*ani 9 java mysql

以前列Data数据类型是Date现在我改为Timestamp Now如果我试图运行程序我得到它们异常

java.sql.SQLException:无法将值'0000-00-0000:00:00'从第12列转换为TIMESTAMP.在com.mysql.jdbc.ResultSetRow.getTimestampFast(ResultSetRow.java:1298)在com.mysql.jdbc.ByteArrayRow.getTimestampFast(ByteArrayRow.java:124)在com.mysql.jdbc.ResultSetImpl.getTimestampInternal(ResultSetImpl.java:6610 )在com.mysql.jdbc.ResultSetImpl.getTimestamp(ResultSetImpl.java:5928)在com.mysql.jdbc.ResultSetImpl.getTimestamp(ResultSetImpl.java:5966)在org.hibernate.type.TimestampType.get(TimestampType.java: 30)在org.hibernate.type.NullableType.nullSafeGet(NullableType.java:163)在org.hibernate.type.NullableType.nullSafeGet(NullableType.java:154)在org.hibernate.type.AbstractType.hydrate(AbstractType.java :81)在org.hibernate.persister.entity.AbstractEntityPersister.hydrate(AbstractEntityPersister.java:2096)在有机

kit*_*kid 9

您只需将zeroDateTimeBehavior = convertToNull添加到您的连接即可jdbc:mysql://localhost/test?zeroDateTimeBehavior=convertToNull.

对我来说,它完美无缺.请参阅此链接以获取更多详细信息.


cas*_*nca 7

0000-00-00 00:00:00超出了TIMESTAMP值的范围(事实上​​,它也不适用于DATE字段).从MySQL手册:

TIMESTAMP数据类型的范围为"1970-01-01 00:00:01"UTC到"2038-01-19 03:14:07"UTC.