我有一个带有mariaDB的Spring引导应用程序,在将连接器(org. mariadb.jdbc:mariadb-java-client)从2.7.5版更新到3.0.3版后,datetime(LocalDateTime和ZonedDateTime)使用的精度较低。在数据库本身中,列是DATETIME(6),因此它们应该能够保持6的精度。但是如果我想从数据库中获取一个值,则生成的LocalDateTime/ZonedDateTime只有3的精度。
示例:
我有一个时间戳为2022-03-14T08:59:33.893372的实体。
我将其保存到db。再次从db中取回此实体。从数据库中取出实体的时间戳将是2022-03-14T08:59:33.893。
这会导致两个对象的比较失败,也会导致测试失败。
只有当我使用MariaDB连接器3.0.3时才会出现这个问题。在2.7.5版本中,一切正常。我不会更改任何属性或其他东西。
我使用spring-boot 2.6.4与Hibernate5.6.5.Final和mariaDb服务器10.6。
为什么会发生这种情况?有没有办法通过更新的mariaDb连接器获得6的精度?
谢啦
我有和你一样的问题:(发现连接器问题https://jira.mariadb.org/browse/CONJ-947,已经修复了。修复将是3.0.5版本的一部分