1

Hibernateで名前付きパラメーターのquery.setStringにNull値を設定するにはどうすればよいですか?

ありがとう、Kathir

4

1 に答える 1

0

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);
}
于 2012-09-06T08:22:36.383 に答える