Hibernateで名前付きパラメーターのquery.setStringにNull値を設定するにはどうすればよいですか?
ありがとう、Kathir
SQLではnull値に別の構文が必要なので、できないと思います。SQL での例:
select x.col from table x where x.string = 'text';
しかし、null 値を使用すると、
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);
}