[Seasar-user:2626] Re: 【S2Dao】 (質問) QUERYアノテーションでのSQLコメント[BEGIN]の使用は?

matsufjth-0852-sendai4-miyagino9@vmail.plala.or.jp matsufjth-0852-sendai4-miyagino9
2005年 9月 29日 (木) 16:43:56 JST


まつむらと申します。

http://www.seasar.org/s2dao.html#QueryAnnotation に明記されていますが
QUERYアノテーションでは'WHERE句のWHERE'は記述しないのだと思います。
逆にSQLアノテーションでは、SQL文すべてを記述する必要があると思います。

あ、質問への回答は「BEGINは使う必要がない」ですかね?

>お世話になります。五十嵐と申します。
>
>SQLコメント[BEGIN]の使用法について、ご教示頂きたく。
>
>□質問
>Queryアノテーション内で[/*BEGIN*/WHERE.../*END*/]は使用可能であるか?
>
>□環境
>S2Container : 2.2.10
>S2Dao       : 1.0.28
>
>□現象
>現在、以下のよう[BEGIN]を使用しております。
>----------------------------------------------
>public static final String getHoge_QUERY
>    = "/*BEGIN*/WHERE" +
>      "/*IF true*/ 1=1 /*END*/" +
>      "/*END*/";
>----------------------------------------------
>
>getHoge実行時、以下のSQLが生成されております。
>----------------------------------------------
>SELECT hoge FROM fuga WHERE WHERE 1=1
>----------------------------------------------
>
>□問題
>・WHERE句が重複して出力される
>・[IF false]とした場合でも"一つ目"のWHEREが出力される
>
>現象から、QUERYアノテーションでの[BEGIN]の使用は
>想定されていないのでは?とも考えておりますが、
>明記されたドキュメントを発見することができず、
>確信をもつにいたっておりません。






Seasar-user メーリングリストの案内