[Seasar-user:1461] S2Dao:where句の一部をバインドできないでしょうか。

jazzatny jazzatny
2005年 2月 2日 (水) 05:03:22 JST


佐藤です。

where句の一部に

     ((a_tbl.what_cd = '0' and a_tbl.why_cd = '1') or
      (a_tbl.what_cd = '3' and a_tbl.why_cd = '2') or
      (a_tbl.what_cd = '3' and a_tbl.why_cd = '2'))

のような、中身が可変になる条件文を外部で生成して
S2DaoのSQLコメントに渡そうと思ったのですが、
現状、Stringが渡ると、シングルクォーテーションで囲われてしまい、
有効なSQLではなくなってしまいます。

select *
   from a_tbl
  where a_tbl.where_cd = '8899'
    and '((a_tbl.what_cd = '0' and a_tbl.why_cd = '1') or
          (a_tbl.what_cd = '3' and a_tbl.why_cd = '2') or
          (a_tbl.what_cd = '3' and a_tbl.why_cd = '2'))'

こういうケースは結構あると思いますが、何か対応方法はあるでしょうか。

よろしくお願いします。



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