我有个问题。我正在用springu和jpa/hibernate编写一个程序。我使用的数据库是PostgreSQL。我有一个简单的表,有两列:第一列为";带有时区的时间戳";第二种类型为";没有时区的时间戳";。在我的模型中,这些列有";LocalDateTime";类型我使用JpaRepository中的nativeQuery,如下所示:
@Modifying
@Query(value = "INSERT INTO public.tempor(id, date1, date2) VALUES (2, now(), now());", nativeQuery = true)
void saveTransaction();
将其插入数据库后,第一列具有来自datebase datetime的正确值,但第二列设置为我的localhost datetime。为什么以及如何解决这个问题?谢谢你的帮助。
您可以使用CURRENT_TIMESTAMP
,例如:
INSERT into tempor (id,date1)
VALUES (1, current_timestamp);
第二个选项,您可以将列的默认值设置为now((:
alter table tempor alter date1 set default now();