Annu Ranjan Ответов: 1

Как хранить данные логического типа в столбце таблицы БД postgresql с типом данных " бит " с помощью hibernate?


У меня есть переменная типа Boolean в моем классе сущностей по имени "isActive". Он сопоставляется со столбцом по имени "is_active" с типом данных как бит.

@Column(name = "is_active")
private boolean isActive;

Но когда я пытаюсь сохранить атрибут isActive объекта, я получаю ошибку:
column "is_active" is of type bit but expression is of type character 
varying Hint: You will need to rewrite or cast the expression.

Как я могу хранить значения значений isActive? Я хочу сохранить "1 "в базе данных, когда значение" isActive "истинно, и" 0", когда" isActive " ложно.

Спасибо!

Что я уже пробовал:

Пробовал много онлайн-решений, таких как аннотирование с помощью аннотаций @Type и добавление различных свойств к аннотации @Column, например
@Column(name = "is_active" nullable=false, columnDefinition="TINYINT", length=1)
и т.д...

1 Ответов

Рейтинг:
2

RickZeeland

Я думаю, что в NHibernate тип столбца TrueFalse, который ожидает 'T' или 'F'.
Вам нужно будет изменить тип столбца на Boolean.
Видеть: Глава 5. Базовое Отображение O/R[^]