2012-01-16 19 views
0

データベースのテーブルの特定の列の更新を行い、add.Butのような簡単な算術演算を行いたいのですが、私の列はnullableです。 エラーが発生しないようにするには、最初にnullであるかどうかを確認する必要があります。 私は冬眠のnullif機能にぶつかるが、私はこれの使用法を知らない。 誰でもnullifの使い方を知っていますか?hibernateのupdate hql文でnullif()関数を使用するにはどうすればいいですか?

更新HQLステートメントでこれを使用して、列がNULLであるかどうかを確認してから、フィールドで追加を実行したかったのです。

ありがとうございました。 :)

答えて

1

署名があるnullif(column, "valueifcolumn is null")

ので、更新中ですUpdate x set x.y = nullif(x.z, 0) + 123

+0

そのそれはあなたに取り組んでme..Isで作業していませんか? : 'executeUpdate'は1を返しますが、テーブルは更新されません。 –

+0

NHibernateとsqliteでしかテストできません。 。プロパティがnullでない場合、それはちょうど細かくインクリメントされます。 – Firo

+0

私はnullifがWHERE節でのみ動作することを読んでいます。しかし、とにかく感謝します:) –

関連する問題