2016-04-01 1 views
0

У меня есть объект с булевым полем какHibernate PostGreSQL логических проблемы

@Entity

@Table(name = "USERS") 
public class User { 

    @Id 
    @GeneratedValue 
    @Column(name = "ID") 
    private Integer id; 

    @Column(name = "ACTIVE") 
    private Boolean active = true; 
} 

И запрос для создания

CREATE TABLE IF NOT EXISTS USERS(
    ID SERIAL PRIMARY KEY, 
    ACTIVE SMALLINT , 
    LOGIN CHAR(255) NOT NULL, 
    NAME CHAR(255) NOT NULL, 
    PASSWORD CHAR(255) NOT NULL, 
    ROLE INTEGER NOT NULL REFERENCES ROLE(ID) 
); 

Когда я пытаюсь взять объект пользователя у меня есть следующее исключение ERROR: оператора не существует: smallint = boolean

+0

Почему вы используете 'smallint', если хотите' boolean'? –

ответ

3

В PostgreSQL, SMALLINT карты до Short и BOOLEAN карты до Boolean (отсюда и название).

Вы можете решить, следует ли менять класс или таблицу.

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

  • Нет связанных вопросов^_^