[Seasar-user:21648] Re: order by のカラム名が別名に変換されない
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2013年 7月 6日 (土) 10:01:54 JST
小林 (koichik) です.
修正して Dolteng 0.43.0 をリリースしました。
On Sat, 6 Jul 2013 01:34:54 +0900 (JST), hiroaki381 @ mbr.nifty.com wrote:
> 馬場です。
>
> お忙しい中、回答ありがとうございます。
>
> >> > empItems = jdbcManager.from(Emp.class).where(swh)
> >> > .orderBy("EMP_NO")
> >>
> >> このコードは scaffold で生成されたコードですか?
> データベース・ビューから「Scaffoldアプリケーションの生成」で
> 生成されたコードです。
>
> >ソースを見た感じでは scaffold が生成するコードが間違ってるようですね。。。
> >週末など時間があるときに修正します。
> コード修正よろしくお願いします。
>
> 以上
>
> ----- Original Message -----
> >Date: Fri, 5 Jul 2013 07:00:02 +0900
> >From: Koichi Kobayashi <koichik @ improvement.jp>
> >To: seasar-user @ ml.seasar.org
> >Subject: [Seasar-user:21645] Re:
> > order by のカラム名が別名に変換されない
> >
> >
> >小林 (koichik) です。
> >
> >会社の PC には Eclipse が入ってないので動かしていませんが、
> >ソースを見た感じでは scaffold が生成するコードが間違ってるようですね。。。
> >週末など時間があるときに修正します。
> >報告ありがとうございました。
> >
> >
> >2013年7月5日 4:55 Koichi Kobayashi <koichik @ improvement.jp>:
> >
> >> 小林 (koichik) です.
> >>
> >> > actionクラスのコード
> >> >
> >> > empItems = jdbcManager.from(Emp.class).where(swh)
> >> > .orderBy("EMP_NO")
> >>
> >> このコードは scaffold で生成されたコードですか?
> >> それとも馬場さんが書いたコードでしょうか?
> >>
> >> もし後者なら、orderBy() で指定するのはカラム名ではなく
> >> エンティティクラスに定義したプロパティ名です。
> >>
> >> http://s2container.seasar.org/2.4/ja/s2jdbc_manager_auto.html#ソート順
> >>
> >> 「orderBy() に書くことのできる条件は、SQLと同じです。 SQLとの違いは、
> >> カラム名の代わりにプロパティ名を書くことです。」
> >>
> >>
> >> On Fri, 5 Jul 2013 00:38:09 +0900 (JST), hiroaki381 @ mbr.nifty.com wrote:
> >>
> >> > お世話になります。馬場と申します。
> >> >
> >> > 現在、S2JDBCを利用した開発をおこなっておりますが、件名の現象が発生してお
> ります
> >> > 。
> >> >
> >> > ■現象
> >> > DoltengのScaffold機能を利用してSaStruts+S2JDBCでScaffold アプリケーション
> の生
> >> > 成を行い、
> >> > 以下の処理のSQL自動生成でカラム名が別名に変更されないため
> >> > SQLエラーが発生します。先頭データでは無く、次ページデータ取得時に発生しま
> す。
> >> >
> >> > .orderBy("EMP_NO") を.orderBy("C1_")に変更しますとSQLエラーは発生しません
> 。
> >> >
> >> > actionクラスのコード
> >> >
> >> > empItems = jdbcManager.from(Emp.class).where(swh)
> >> > .orderBy("EMP_NO")
> >> >
> >> .limit(limit).offset(Integer.valueOf(empForm.off
> >> > set))
> >> > .getResultList();
> >> >
> >> > 自動生成のSQL
> >> >
> >> > select
> >> > *
> >> > from
> >> > (
> >> > select
> >> > temp_.*
> >> > , row_number() over(order by EMP_NO) as rownumber_
> >> > from
> >> > (
> >> > select
> >> > T1_.EMP_NO as C1_
> >> > , T1_.EMP_NAME as C2_
> >> > , T1_.CREATE_DATE as C3_
> >> > , T1_.CREATE_USER_CD as C4_
> >> > , T1_.UPDATE_DATE as C5_
> >> > , T1_.UPDATE_USER_CD as C6_
> >> > from
> >> > EMP_MST T1_
> >> > where
> >> > (T1_.EMP_NO like ? )
> >> > ) as temp_
> >> > ) as temp2_
> >> > where
> >> > rownumber_ >= 11
> >> > and rownumber_ <= 20
> >> >
> >> > ■環境
> >> > JDK 6
> >> > Tomcat 6
> >> > S2Container 2.4.45
> >> > S2Tiger 2.4.45
> >> > SA Struts 1.0.4 sp9
> >> > Dolteng 0.39.0
> >> > SQL Server 2008 R2 Express
> >> >
> >> > 以上、よろしくお願いします。
> >> >
> >> > _______________________________________________
> >> > Seasar-user mailing list
> >> > Seasar-user @ ml.seasar.org
> >> > https://ml.seasar.org/mailman/listinfo/seasar-user
> >>
> >>
> >> --
> >> {
> >> name: "Koichi Kobayashi",
> >> mail: "koichik @ improvement.jp",
> >> blog: "http://d.hatena.ne.jp/koichik/",
> >> twitter: "@koichik"
> >> }
> >>
> >> _______________________________________________
> >> Seasar-user mailing list
> >> Seasar-user @ ml.seasar.org
> >> https://ml.seasar.org/mailman/listinfo/seasar-user
> >>
> >
> >----- inline -----
> >_______________________________________________
> >Seasar-user mailing list
> >Seasar-user @ ml.seasar.org
> >https://ml.seasar.org/mailman/listinfo/seasar-user
>
> _______________________________________________
> Seasar-user mailing list
> Seasar-user @ ml.seasar.org
> https://ml.seasar.org/mailman/listinfo/seasar-user
--
{
name: "Koichi Kobayashi",
mail: "koichik @ improvement.jp",
blog: "http://d.hatena.ne.jp/koichik/",
twitter: "@koichik"
}
Seasar-user メーリングリストの案内