[seasar-s2dao-dev:666] 埋め込み変数コメント の使用方法について

[E-MAIL ADDRESS DELETED] [E-MAIL ADDRESS DELETED]
2009年 3月 10日 (火) 14:44:20 JST


初めまして。pianyi と申します。

DAOの埋め込み変数コメントについて質問があります。


現在、以下のようなSQLを記述しておりますが、実行結果が思い通りになりません。

******************SQLファイルの記述*******************
SELECT * 
  FROM DUAL
 WHERE /*IF kana != null*/カナ /*$kana*/='アイ ウエオ    ' AND/*END*/
       1 = 1

(注意:'アイ ウエオ' は半角カタカナです)

*******************実行結果***************************
SELECT * 
  FROM DUAL
 WHERE カナ = 'カキ クケコ' ウエオ    ' AND
       1 = 1

または、
 WHERE カナ LIKE '%カキ%' ウエオ' AND
       1 = 1

(注意:'カキ クケコ' ウエオ' は半角カタカナです)
*************************************************

このようなSQLが実行されるため、SQLエラーが発生してしまいます。
私の認識では【/*$kana*/='アイ ウエオ    '】 が全て置換されると思っておりました。

応急処置として【/*$kana*/'アイ ウエオ    '】(=を消す) を行った所想定通りに動きました。


そこで質問です。
1.この現象は、バージョンが古い為に起こっているのでしょうか?
2.このような状況の場合、どのように修正するのが良いのでしょうか?
  (=が無くなるとテスト出来なくなり不便なので…)


大変申し訳ありませんが、ご教授願います。

以上、よろしくお願い致します。


開発環境:(古すぎて申し訳ありません。都合によりバージョン変更出来ません)
・eclipse3.2
・mayaa-10.7.jar
・s2-struts-1.2.8.jar
・s2-dao-1.0.40.jar
・s2-extension-2.3.16.jar
・s2-framework-2.3.16.jar


seasar-s2dao-dev メーリングリストの案内