【问题标题】:PSQL Exception on column length列长度​​的 PSQL 异常
【发布时间】:2012-06-17 17:20:48
【问题描述】:

当我尝试使用 EclipseLink JPA 插入某个实体的描述值时,我得到一个 internal exception: org.postgresql.util.PSQLException: Error value too long for varying character (255)。我认为使用 @LOB 注释并在列上设置最大长度将按如下方式处理:

@Size(min = 0, max = 9000)
@Lob
@Column(name = "description", length = 2000)
private String description;

但这并不能解决问题,我如何指定我想要此列的非绑定长度,因为它可能非常大

【问题讨论】:

  • 使用text 列而不是varchar(255)。实际上,你应该忘记 varchar 与 PostgreSQL 并始终使用 text (当然,除非有真正的长度限制)。
  • 我正在使用 Java 持久化 api,类型文本如何转换为该 api,我正在寻找转换为该 api 的注释
  • 我不知道 JPA,这就是为什么我只是发表评论为您指明正确的方向。
  • PostgreSQL 中的 varchar 没有限制。您可以使用 varchar() 存储任意大小的字符串。

标签: postgresql jpa eclipselink lob


【解决方案1】:

事实证明,我必须重新创建所有表才能使此效果起作用@Lob 在 postgresql 中声明了文本类型。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-21
    • 2019-08-19
    • 2018-10-18
    相关资源
    最近更新 更多