我们在Microsoft SQL Server中将isSystem
列作为tinyint
。我们在hibernate中将此列映射为boolean
。
Hibernate 这就是我在Hibernate中使用where where的方式。
/* We added restriction like this */
criteria.add(Restrictions.eq("system", true));
问题:当我从hibernate运行代码时它没有使用数据库索引但是如果我直接在Microsoft SQL Server中触发查询,那么它使用索引。 hibernate如何在SQL Server中TRUE
和FALSE
与tinyint
一起使用。
查询: SELECT * FROM TABLE_NAME WHERE isSystem = 1
答案 0 :(得分:0)
在实体中尝试使用
@Column(columnDefinition = "TINYINT")
@Type(type = "org.hibernate.type.NumericBooleanType")
public boolean isSystem;