[Seasar-user:3327] Re: [S2DAO] 要望 QUERYファイル、他
上原 慶三
[E-MAIL ADDRESS DELETED]
2006年 3月 5日 (日) 03:15:06 JST
上原です。
こちらは、あまり急ぎでないですよね。
いまS2Dao-1.1を開発しようとしているので、
S2Dao-1.1で実装しようと思います。
ほかにも、ご要望がありましたらお知らせください。
マイナーバージョンアップで新機能を導入するのは勇気がいるので、
新しい機能を追加するなら今のうちです。
[E-MAIL ADDRESS DELETED] wrote:
> まつむら(mattena31)と申します。
>
> 私も松山さんの意見に同感です。
> 実は http://d.hatena.ne.jp/mattena31/20050808 でも似たような
> 要望してました。
>
> どうぞ、よろしくお願いいたします。
>
>
> 松山 大樹 <[E-MAIL ADDRESS DELETED]>さん:
>> S2DAO での要望です。
>>
>> 1.QUERY ファイル
>> 現在、SQLアノテーションはSQLファイルとして配置することができ
>> ますが(順序としてはSQLファイルが、SQLアノテーションとして記述
>> することができる、でしょうが)、QUERYアノテーションもQUERY ファイル
>> として配置することができないでしょうか?
>>
>> S2DAO のサンプルになっている、EMP とDEPT テーブルを例に取ると、
>> N:1 の結合を行うとき、SQLファイル(or アノテーション) では、
>> ------------------------------------------
>> select * from emp, dept
>> where emp.deptno = dept.deptno(+)
>> and emp.deptno = /*deptno*/99
>> ------------------------------------------
>> のような記述をすると、dept の内容が取得できません。dept の
>> 内容を取得しようとすると、
>> ------------------------------------------
>> select emp.*, dept.dname dname_0, dept.loc loc_0 from emp, dept
>> ------------------------------------------
>> のように記述する必要があります。dept のカラム数が多いとき、
>> かなり面倒です。
>>
>> 同じことをQUERY アノテーションで行う場合、テーブルの結合は
>> S2DAO がやってくれるのですが、where句に与える条件が長くなった
>> 場合、外部ファイルで管理した方がソースがきれいになる場合もあると思いま
> す。
>> 個人的に、
>> public String getEmployeeByDeptno_QUERY = "/*IF deptno != null*/
> deptno = /*deptno*/123\n"+
>> " /*ELSE*/ 1=1\n"+
>> "/*END*/";
>> のような書き方がきらいなだけなのですが。
>>
>> これは、*.query ファイルなどで外部におけるといいな、と。
>> SQL単体でのテストがしやすいように、where句より前は無視してくれると、
> なおうれしいです。
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://www.seasar.org/mailman/listinfo/seasar-user
>
--
---
上原 慶三<[E-MAIL ADDRESS DELETED]>
Seasar-user メーリングリストの案内