如何在使用 java.time.LocalDateTime 时将脚本中的日期和时间插入 PostgreSQL 数据库

How to insert Date and Time from script into PostgreSQL database while using java.time.LocalDateTime

我在将时间正确插入 PostgreSQL 数据库时遇到问题。 使用 JPARepository 和 hibernate 使用 SpringBoot 制作 Web 应用程序。 使用此方言:

spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.PostgreSQL95Dialect

我有一个 class:

@Entity
public class Class {
//other stuff
@Column(name = "date_and_time")
private LocalDateTime dateAndTime;

我需要一些测试数据,当我使用此脚本启动我的应用程序时:

insert into class(date_and_time) values (DATE('2020-06-10 18:43:20');

我数据库中的结果是这样的 2020-06-10 00:00:00

有什么方法可以在我的数据库中正确插入时间?

当您使用“DATE”函数时,您将日期时间强制转换为唯一的日期,因此您丢失了时间信息。只需删除该功能即可。