[Seasar-user:1573] Re: 不完全なSELECT文が生成される

Asuka Ito asuka
2005年 3月 8日 (火) 13:50:19 JST


伊藤です。


Tue, 08 Mar 2005 13:07:58 +0900
Yasuo Higa <[E-MAIL ADDRESS DELETED]> wrote:

> これだけの情報じゃ良く分からないんですが、プライマリーキーやカラムの情報が
> JDBCのメタデータから取得できてないんじゃないかと思います。
> framework.util.DatabaseMetaDataUtilのgetPrimaryKeySet,getColumnSetに
> ブレークポイントを当てて、動作を見るとその様子が確認できます。

確認してみました。実はいろんなRDBMSを試しているうちに正直、再現性がわか
らなくなっていたのですが少し整理がついた気がします。

例えば、Bean名が Hogehoge だったとします。

このときgetColumnSetの引数tableNameにはHogehogeが入ってきますが、
convertIdentifierを通ると、tableNameはhogehogeになっています(つまり、先
頭文字が小文字)。
しかし、生成されるSELECT文は

  SELEC FROM Hogehoge
             ~大文字

です。私が準備しているテーブル名は、Hogehogeです。
MySQLは、テーブル名の大文字小文字を区別するので、hogehogeでメタデータは
取得できなかったということになるのでしょうか?(すいませんソースを追いき
れません)

テーブル名をhogehogeにすると、今度は生成されたSELECT文が通らなくなるよう
なので、結局MySQLではSELECT文の自動生成は使えないような気がするのですが、
どうなのでしょうか?

以上よろしくお願いいたします。


-- 
Asuka Ito <[E-MAIL ADDRESS DELETED]>




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