2012-06-17 3 views
0

Я получаю internal exception: org.postgresql.util.PSQLException: Error value too long for varying character (255), когда пытаюсь вставить с помощью EclipseLink JPA значение для описания на определенном объекте. Я думал, что с помощью @LOB аннотацию и установив максимальная длина на колонке будет заботиться о нем следующим образом:Исключение PSQL по длине столбца

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

, но это не решает проблему, как я могу определить, что я хочу не имеющее обязательной длины для этого колонка, так как она может быть очень большой

+0

Используйте столбец 'text' вместо' varchar (255) '. На самом деле, вы должны забыть о 'varchar' с PostgreSQL и всегда использовать' text' (если, конечно, не существует ограничения реальной длины). –

+0

Я использую Java persistence api, как текст текста преобразуется в этот api, я ищу аннотацию, которая переводится на это – Warz

+0

Я не знаю JPA, поэтому я просто комментирую, чтобы указать вам на правильную направление. –

ответ

0

Оказывается, мне нужно воссоздать все таблицы для этого эффекта, чтобы работать @Lob объявляет тип текста в postgresql.

Смежные вопросы