gpt4 book ai didi

postgresql - 在 Postgres 数据库中存储 ZonedDateTime

转载 作者:行者123 更新时间:2023-11-29 12:42:06 25 4
gpt4 key购买 nike

我在我的 JPA 实体中使用 ZonedDateTime。我也在使用 Postgres 数据库。默认情况下,postgres 将表架构创建为 bytea 列类型。

我有两个问题

  1. 可以将此信息存储为 bytea 格式吗?
  2. 如果我要进行 SQL 比较,假设我想要大于给定日期的条目,我该如何在 SQL 中编写此比较,也就是说如何将 bytea 转换回 Date?

最佳答案

首先,JPA 只映射基本和最常见的类型。

当您声明一个不受支持的类型的字段时,Bytea 是 postgres 最终使用的类型,并且没有说明如何处理它的注释。参见 https://www.postgresql.org/docs/9.0/static/datatype-binary.html .使用 bytea 的原因是,当无法映射类型时,它假定您希望对象被序列化存储。

此时 JPA 不支持 Java 8 类型,有关 JPA 标准的更多信息,请访问: https://vladmihalcea.com/whats-new-in-jpa-2-2-java-8-date-and-time-types/

您可以使用 hibernate 创建自定义数据类型,前段时间我在 play framework 组中发布了此内容:
https://groups.google.com/d/msg/play-framework/3AtNiMf_WBM/LBMeztlXBAAJ

再见
汉斯

关于postgresql - 在 Postgres 数据库中存储 ZonedDateTime,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44924951/

25 4 0
文章推荐: ruby-on-rails - 计算两个日期列 Rails 具有相同差异的记录
文章推荐: php - 在 HTML 下拉