[Seasar-user:3475] Re: [S2Dao][Sybase]自動SQL作成時に列名が小文字になってしまう。

Takao Kimura [E-MAIL ADDRESS DELETED]
2006年 4月 8日 (土) 07:39:53 JST


自己レスです。

SQLファイルを記述することで、現象の回避は出来ました。
複数DBMS対応のところを見ると、Sybaseは正式には対応していない
ようですね。

Sybaseに対応して欲しいのですが、予定はあるのでしょうか?

------------------------------
神奈卓
木村 卓央 <Takao Kimura>
[MAIL] [E-MAIL ADDRESS DELETED]
[Blog]http://d.hatena.ne.jp/takubon/

On Thu, 06 Apr 2006 22:24:50 +0900
Takao Kimura <[E-MAIL ADDRESS DELETED]> wrote:

> はじめまして、木村@神奈卓と申します。
> 
> 現在S2JSF Blank 1.0.14を利用して試用アプリケーションを作成しておりますが、
> S2DAOの自動SQL作成を行うとSQLExceptionが発生してしまいます。
> 一応過去ログを検索し、[Seasar-user:1214] DatabaseMetaDataUtil.getPrimaryKeySetについてと同様な件と
> 思うのですが、変更箇所が(力不足で)見当たらないので質問させていただきました。
> 
> 現象:
> Sybaseよりデータを取得する際に、列名が小文字になってしまいSQLExceptionが発生している。
> 
> 特記事項:
> Sybaseは列名の大文字、小文字を判別するということで、全て、COLUMNアノテー
> ションを定義しています。
> また、version列は、VersionNoによる排他制御に利用する列ですので、定義は、versionNoとなっています。
> public static final String versionNo_COLUMN = "VERSION";
> 
> バージョン等:
> S2Container 2.3.7
> S2Dao 1.0.32
> S2JSF 1.0.14
> j2sdk1.4.2.08
> jConnet6.0
> Sybase Adaptive Server Enterprise 12.0.0.7
> 
> トレースログ抜粋:
> DEBUG 2006-04-06 13:17:07,125 [http8080-Processor25] BEGIN
> jp.co.nksol.b
> iwako.web.example.action.impl.CustomerSearchActionImpl#action()
> DEBUG 2006-04-06 13:17:07,125 [http8080-Processor25] BEGIN jp.co.nksol.biwako.web.example.logic.impl.CustomerSearchLogicImpl#getAll()
> DEBUG 2006-04-06 13:17:07,171 [http8080-Processor25] トランザクションを開始しました
> DEBUG 2006-04-06 13:17:07,171 [http8080-Processor25] BEGIN jp.co.nksol.biwako.web.example.dao.CustomerDao#getAll()
> DEBUG 2006-04-06 13:17:08,109 [http8080-Processor25] 物理的なコネクションを取得しました
> DEBUG 2006-04-06 13:17:08,109 [http8080-Processor25] 論理的なコネクションを取得しました
> DEBUG 2006-04-06 13:17:08,484 [http8080-Processor25] 論理的なコネクションを閉じました
> DEBUG 2006-04-06 13:17:08,640 [http8080-Processor25] SELECT CUSTOMER.ACCOUNT_CODE, CUSTOMER.BRANCH_CODE, CUSTOMER.ACCOUNT_TYPE, CUSTOMER.BACK_SYS_UPDATE_YMD_DATE, CUSTOMER.CO_CUST_NAME, CUSTOMER.CO_CUST_NAME_KANA, CUSTOMER.CO_CUST_REP_PERSON, CUSTOMER.CO_CUST_REP_PERSON_TITLE, CUSTOMER.CUSTOMER_CLASSIFY_CODE, CUSTOMER.CUSTOMER_CODE, CUSTOMER.CUSTOMER_NAME, CUSTOMER.CUSTOMER_NAME_KANA, CUSTOMER.CUSTOMER_TAX_CODE, CUSTOMER.PERSONALITY_TYPE, CUSTOMER.SECTION_GROUP_CODE, CUSTOMER.version FROM CUSTOMER
> DEBUG 2006-04-06 13:17:08,687 [http8080-Processor25] 論理的なコネクションを取得しました
> DEBUG 2006-04-06 13:17:08,781 [http8080-Processor25] 論理的なコネクションを閉じました
> DEBUG 2006-04-06 13:17:08,781 [http8080-Processor25] END jp.co.nksol.biwako.web.example.dao.CustomerDao#getAll() Throwable:org.seasar.framework.exception.SQLRuntimeException: [ESSR0071]SQLで例外が発生しました。理由はcom.sybase.jdbc3.jdbc.SybSQLException: カラム名 'version' が正しくありません。
> DEBUG 2006-04-06 13:17:08,781 [http8080-Processor25] トランザクションをロールバックしました
> DEBUG 2006-04-06 13:17:08,781 [http8080-Processor25] END jp.co.nksol.biwako.web.example.logic.impl.CustomerSearchLogicImpl#getAll() Throwable:org.seasar.framework.exception.SQLRuntimeException: [ESSR0071]SQLで例外が発生しました。理由はcom.sybase.jdbc3.jdbc.SybSQLException: カラム名 'version' が正しくありません。
> ERROR 2006-04-06 13:17:08,796 [http8080-Processor25] [ESSR0071]SQLで例外が発生しました。理由はcom.sybase.jdbc3.jdbc.SybSQLException: カラム名 'version' が正しくありません。
> org.seasar.framework.exception.SQLRuntimeException: [ESSR0071]SQLで例外が発生しました。理由はcom.sybase.jdbc3.jdbc.SybSQLException: カラム名 'version' が正しくありません。
> 	at org.seasar.framework.util.PreparedStatementUtil.executeQuery(PreparedStatementUtil.java:37)
> 
> 
> 
> 木村 卓央 <Takao Kimura>
> [個人] [E-MAIL ADDRESS DELETED]
> 
> 
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://www.seasar.org/mailman/listinfo/seasar-user
> 






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