[Seasar-user:17788] Re: SELECT時のWHERE句へのBigDecimalの使用について
TetsuyaSawada
[E-MAIL ADDRESS DELETED]
2009年 6月 18日 (木) 21:04:37 JST
お世話になっております。
澤田です。
小林 (koichik) 様ご回答
ありがとうございました。
NOT NULL制約をつけて対応するのがよさそうですね。
ありがとうございました。
-----Original Message-----
From: [E-MAIL ADDRESS DELETED]
[mailto:[E-MAIL ADDRESS DELETED]] On Behalf Of Koichi Kobayashi
Sent: Thursday, June 18, 2009 8:20 PM
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:17786] Re: SELECT時のWHERE句へのBigDecimalの使用につい
て
小林 (koichik) です.
Date: Thu, 18 Jun 2009 19:21:18 +0900
From: "TetsuyaSawada" <[E-MAIL ADDRESS DELETED]>
To: <[E-MAIL ADDRESS DELETED]>
Subject: [Seasar-user:17785] SELECT時のWHERE句へのBigDecimalの使用について
> SELECT時に、S2Daoの自動生成のSQL文に対して、
> ARGSアノテーションを指定し、そのDaoの引数にBigDecimal型の
> 引数を与えています。
>
> そのBigDecimal型の引数にnullを渡してSELECTしたところ、
> where句以降が消滅し、全件検索となってしまいます。
S2Dao の仕様ですね.
http://s2dao.seasar.org/ja/s2dao.html#AutoSelect
どのみち SQL では null = null は真ではないので,
もし検索条件から外されなければ結果は 1 件も
返ってこないことになります.
BigDecimal 型のカラムが null の行を検索したいなら
= ではなく is null を使う必要があり,それは
SELECT 文の自動生成では対応していない (SQL ファイルを
使う必要がある) のではないでしょうか.
--
<component name="koichik">
<property name="fullName">"Koichi Kobayashi"</property>
<property name="email">"[E-MAIL ADDRESS DELETED]"</property>
<property name="blog">"http://d.hatena.ne.jp/koichik"</property>
</component>
_______________________________________________
Seasar-user mailing list
[E-MAIL ADDRESS DELETED]
https://ml.seasar.org/mailman/listinfo/seasar-user
Seasar-user メーリングリストの案内