我正在使用 Java 8 和 Hibernate 5.2.9 我有一个包含变量结尾的对象
@Column(name = "end", nullable = false, columnDefinition = "TIMESTAMP")
private LocalDateTime end;
在数据库中,该字段定义为
`end` TIMESTAMP NOT NULL
所以当我尝试做
时sessionFactory.getCurrentSession().save(object);
我得到了
Caused by: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Incorrect datetime value: '\xAC\xED\x00\x05sr\x00\x0Djava.time.Ser\x95]\x84\xBA\x1B"H\xB2\x0C\x00\x00xpw\x0E\x05\x00\x00\x07\xE1\x08\x0F\x13\x1E\x13\x1C1h@' for column 'end' at row 1
因为我认为java 8和hibernate 5.2.9知道LocalDateTime
是什么,所以不确定我到底做错了什么。自从我被困住以后,我将不胜感激。
答案 0 :(得分:0)
我认为问题是你使用的是两种不同的日期类型。
TIMESTAMP
- :'1970-01-01 00:00:01'UTC
LocalDateTime
- :2017-08-16T05:22:23.832`
使用一个Date
甲酸盐