【发布时间】:2023-03-06 17:53:02
【问题描述】:
我们有一个用例,在 Postgres 数据库中存在 'datewise_tariff' 类型的列 numeric(13,3)[]。此列存储的值是十进制值,例如{953.893,953.893,953.893}
我们需要将此列类型映射到 Hibernate Java 实体,但我们收到以下错误:
SQL Error: 0, SQLState: 42804
ERROR: column "datewise_tariff" is of type numeric[] but expression is of type bytea
Hint: You will need to rewrite or cast the expression.
Position: 738
我们尝试通过以下方式对其进行映射:
@Column(name = "datewise_tariff")
private float[] datewiseTariff
@Column(name = "datewise_tariff")
private BigDecimal[] datewiseTariff
@Column(name = "datewise_tariff", columnDefinition = "numeric(13,3)[]")
private float[] datewiseTariff;
@Column(name = "datewise_tariff", columnDefinition = "numeric(13,3)[]")
private BigDecimal[] datewiseTariff;
@Column(name = "datewise_tariff", columnDefinition = "numeric(13,3)[]")
private byte[] datewiseTariff;
@Column(name = "datewise_tariff")
private byte[] datewiseTariff;
以上所有方法似乎都不起作用,并且总是抛出相同的上述错误。
另外,尝试使用hibernate-types sdk,但它似乎也不支持相同的。
【问题讨论】:
标签: postgresql hibernate