[Seasar-user:5201] Re: [S2DAO] SELECT文のversionNoについて
kubo
[E-MAIL ADDRESS DELETED]
2006年 11月 20日 (月) 00:16:39 JST
久保です。
> としたいのですが
> (1)のSQLが [SELECT 〜省略〜 WHERE code = 100 and version_no = 0]
> となるために、自作のSQLをわざわざ作って
> dto = dataTableDtoDao.selectByPk(dto.getCode()); ←(1)
> としています
> DataTableDto
> private int code;
> private String name;
> private int versionNo;
こちらですが、おそらく DataTableDto の versionNo が int 型のため、
Javaのint型のデフォルト値「0」が有効となってWhere句に
「and version_no = 0」が付与されてしまうのかと思います。
解決方法は人それぞれかもしれませんが、
・QUERYアノテーションを利用して、「code = /*code*/0」を指定する
・intをIntegerやBigDecimalなどのNullableな型に変える
などになるかと思います。
#
# ちなみに自分なんかは、数値は全てBigDecimal統一してます。
#
--
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
kubo <[E-MAIL ADDRESS DELETED]>
jflute <http://d.hatena.ne.jp/jflute>
株式会社ビルドシステム <http://www.buildsystem.co.jp>
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
Seasar-user メーリングリストの案内