[Seasar-user:20161] 【DBFlute】 外だしSQL実行時例外の発生について

金子 雄一 [E-MAIL ADDRESS DELETED]
2010年 9月 16日 (木) 17:49:12 JST


金子です。

DBFluteの最新版(0.9.7.4-RC1)にて、下記のような実行時例外が出るようになり 
ました。
0.9.7.3でも出ていた記憶があります。
なお、その前に使用していた0.9.6.8では、この例外は出てきません。

[Advice]
If a style of a test value is '(...)', parameter should be list or array 
for in-scope.
For example:
   (x) - MEMBER_ID in /*pmb.memberId*/('foo', 'bar')
   (o) - MEMBER_ID in /*pmb.memberIdList*/('foo', 'bar')

[Comment Expression]
pmb.prdName

[Parameter Type]
class java.lang.String

で、例外が出る条件が、

この場合ですと、

where
	tableA.prdName = /*pmb.prdName*/('1')

と、記載されている場合です。
つまり、
	tableA.prdName = /*pmb.prdName*/'1'

のように、カッコがない場合は、例外となりません。
(postgreSQL 8.3の場合)

SQLとしては、カッコがなくても、問題なく動作いたしますので、
2WAY-SQLの特性を考えると、
カッコがあっても例外が出ないような形でも、
例外が出ないような形にならないものでしょうか?

もしくは、dfprop等の設定で、この書き方でも
例外にならないようなオプションはありますでしょうか?

バージョンを下げれば動作はいたしますが、
以前要望させていただいた機能が、
最新版で提供されているため、
バージョンを下げるに下げられない状況です。
(ちょっと、珍しいパターンかもしれませんが…。)


ご不明な点がありましたら、ご連絡ください。
以上、よろしくお願いいたします。

-- 
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
金子 雄一  Yuichi Kaneko
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆


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