java - Hibernate Postgresql boolean 问题

标签 java hibernate postgresql

我有像这样的 boolean 字段对象

@实体

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

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

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

AND 查询创建

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)
);

当我尝试获取用户对象时出现下一个异常错误:运算符不存在:smallint = boolean

最佳答案

在 PostgreSQL 中,SMALLINT 映射到 ShortBOOLEAN 映射到 Boolean(因此得名)。

您可以决定是更改类还是表。

关于java - Hibernate Postgresql boolean 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36356912/

相关文章:

java - Hibernate 在单个查询中选择集合作为列

postgresql - 如何将混合或完全大写的表名从一个 postgres 数据库复制到另一个数据库?

SQL 架构设置

java - .NET 控制台应用程序客户端和 Java RESTful 服务之间的 TLS 客户端身份验证

java - Hibernate查询计数查询,不知道怎么办

java - 如何在hibernate java中的createSQLQuery中使用ilike和%

python - 生成在 PostgreSQL 表索引中运行良好的自然主键值的图像哈希算法?

java - 如何在Java中实现单个全局变量

java - 从多个类中绘制图形?

java - Linux下如何生成opencv-247.jar