[Seasar-user:1602] Re: [S2Dao] N:1:1 のような問い合わせの自動化

Hikaru Taniguchi taniguchi
2005年 3月 11日 (金) 21:34:44 JST


たにぐちです。未解決ですが自己レス。

employee表に DEPTNUMがあり、department表のDEPTNOに foreign key な前提
で、
------------------------------------------------------------------
  public static final employee_RELNO = 0;
  public static final department_RELNO = 1;

  public static final department_RELKEYS = "DEPTNUM_0:DEPTNO";
------------------------------------------------------------------
という風に書けばひょっとしてうまくいくのか!と思ってやってみましたが

------------------------------------------------------------
SELECT
 (略)
    employee.DEPTNUM AS DEPTNUM_0,
 (略)
FROM
    SALESRANKING,
    EMP employee,
    DEPT department
WHERE
    SALESRANKING.EMPNO = employee.EMPNO(+) AND
    SALESRANKING.DEPTNUM_0 = department.DEPTNO(+) ....
    ^^^^^^^^^^^^
            ここ
------------------------------------------------------------
"ここ"が問題でダメでした…

# かすったような気がしたのに...

At Fri, 11 Mar 2005 21:22:10 +0900,
Hikaru Taniguchi <[E-MAIL ADDRESS DELETED]> wrote:
> 
> 
> たにぐちです。
> 
> S2DaoでのN:1の自動取得について、深さ2以上の関係についても自動化するこ
> とは可能でしょうか?? (質問 + 提案)
> 
> S2Daoで以下のような問い合わせをする必要が出てきました。
> 
> - - - - - - - - - - - - - - - 
>    SalesRankingBean  N:1  EmployeeBean    かつ
>    EmployeeBean  N:1  DepartmentBean
> 
>        のとき
> 
>    SalesRankingDao#find() すると、
> 
>    SalesRankingBean -- EmployeeBean -- DepartmentBean
> 
>  のようなオブジェクトグラフが出来上がる
> 
> - - - - - - - - - - - - - - -
> 
> 現状のS2Daoでは、深さ1 までしか N:1 の解釈などは実施されないため、
> DepartmentBeanまでは自動取得してくれません。
> 
> # BeanMetaDataImplの setupAutoSelectList() の中の部分を再帰的?になるよう
> # に修正すれば可能な気もしていますが… HOGE_0_0 とかなるのか...?
> 
> いかがでしょう?
> 
> # 間違ったことを堂々と書いてたらごめんなさい
> 
> --
> Hikaru Taniguchi <[E-MAIL ADDRESS DELETED]>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> http://lists.sourceforge.jp/mailman/listinfo/seasar-user
> 
> 
--
Hikaru Taniguchi <[E-MAIL ADDRESS DELETED]>



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