とめどもSeasar日誌

2004 | 05 |

2004-05-14

[]SQLServerでS2Unit15:11

S2UnitをSQLServer2000使って動かしてみました。JDBCドライバはMSが配布しているドライバ(SP2)。関係ないけど、日本語サイトではいつまでたってもSP2が公開されないぞ。何でやねん。

それはさておき、S2UnitのreadXlsWriteDbを使ってみたのですがいきなしSQLRuntimeException...

デバッグ使って生成されるインサート文を確認したところ、「INSERT INTO HOG) VALUE(」(テーブル名がHOGEのとき)となってて全く意味不明。

ずーっとデバッグモードで追っかけた結果、DatabaseMetaDataUtil#getColumnList()でちゃんとカラムを取得出来ずにいたせいだった。

dbMetaData.getColumns(
"",
dbMetaData.getUserName(),
tableName.toUpperCase(),
null);

dbMetaData.getColumns(
null,
null,
tableName.toUpperCase(),
null);

にしたら動いた。そういやMLで似たようなの見たなー、と思ってログ読み直してたら、似てるどころか全く同じ問題だった。

SQLServer2000でも、どいさんの指摘通りで動きます!ということで。

higayasuohigayasuo2004/05/14 18:14ういっす。それではS2.0.8になれば大丈夫。(^^;