如何在Hibernate中为命名参数的query.setString设置Null Value?
谢谢, 卡锡尔
答案 0 :(得分:0)
我认为你做不到,因为在SQL中你需要一个不同的null值语法。 SQL中的示例:
select x.col from table x where x.string = 'text';
但是你使用空值
select x.col from table x where x.string is null;
因此,您无法在SQL中的命名参数中设置null。同样在Hibernate中,当字符串为null时,您需要一个不同的查询。例如:
String select;
if (s == null) {
select = "from Table where column is null";
} else {
select = "from Table where column = :string";
}
Query q = session.createQuery(s);
if (s != null) {
q.setString("string", s);
}