ITコンサルの日常

ITコンサル会社に勤務する普通のITエンジニアの日常です。

java.sql.ParameterMetaData

JDBC3.0で追加されたインタフェースで、いわゆるSQL文中のパラメータマーカ(?文字で表現される)に関する情報を得るものです。
昨日セットアップしたMSDEについて試してみたところ、以下のようなエラーが出ました。

java.lang.AbstractMethodError: com.microsoft.jdbc.base.BasePreparedStatement.getParameterMetaData()Ljava/sql/ParameterMetaData;

このエラー、実はOracle8i/Oracle9i/hsqldbで、同じエラーが発生しているのですが、何か古い仕様に基づいて実装されたような、そんな雰囲気を感じます。まあ、いずれにしても動かないのですが。
ちなみにOracle10gについては、パラメータ数を取得するところまでは動きますが、型情報を取り出そうとするとUnsupportedOperationExceptionでエラーとなってしまいます。今のところまともな動作が確認できているのはDB2 UDB v8のみで、ParameterMetaDataのインタフェースの実装という意味では進んでいると言えます。