2012-06-17 29 views
0

当我尝试使用EclipseLink JPA插入某个实体的描述值时,我得到一个internal exception: org.postgresql.util.PSQLException: Error value too long for varying character (255)。我想到了用@LOB注释和设置该列上的最大长度可以按如下方式照顾它:列长度上的PSQL异常

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

但这并没有解决问题,我怎么可以指定我想为这个非约束长度列,因为它可能是非常大的

+0

使用'text'列而不是'varchar(255)'。实际上,你应该忘记使用PostgreSQL的'varchar'并且总是使用'text'(除非有实际的长度约束)。 –

+0

我正在使用Java持久性api,如何将类型文本转换为该api,我正在寻找可以转化为该注释的注释 – Warz

+0

我不知道JPA,这就是为什么我只是评论指向右侧方向。 –

回答

0

事实证明,我必须重新创建所有的表格才能正常工作@Lob在postgresql中声明了文本类型。