[前][次][番号順一覧][スレッド一覧]

mysql:12211

From: NAGASAWA Teruo <NAGASAWA Teruo <tech-ml@xxxxxxxxxx>>
Date: Wed, 05 Oct 2005 01:35:44 +0900
Subject: [mysql 12211] Re: 皆さんの使っているJDBCドライバのバージョン

長沢です。お世話になっております。

|> たとえば3.1から値が0の時に例外がスローされるようになっていますよね?
|> そのような例外がスローされたので、ドライバのソースを読んでみると、
|> オプションのような物で変更可能になっていましたが、
|> そのオプションを変更するようなものがどうも無さそうな感じでした。

やっと再現できました。mysql-connector-java-3.1.10です。
フィールドの値が'0000-00-00 00:00:00'を取得しようとした時に発生しました。

Caused by: java.sql.SQLException: Cannot convert value '0000-00-00 00:00:00' from column 8 to TIMESTAMP.
	at com.mysql.jdbc.ResultSet.getTimestampFromString(ResultSet.java:5639)
	at com.mysql.jdbc.ResultSet.getTimestampInternal(ResultSet.java:5667)
	at com.mysql.jdbc.ResultSet.getTimestamp(ResultSet.java:5320)
	at com.mysql.jdbc.ResultSet.getObject(ResultSet.java:4433)

まぁ、、、0000-00-00の状態はjava.util.Calendarでは表現できませんから、
スローされるのもわかるんですが、3.0では問題なかったんですよね。

僕の場合はテーブル定義にnot nullを多用するので、新規案件ならともかく、
すでに稼働中のシステムではバージョンアップは断念せざるを得ない状態です。
# オプションで指定できるのかもしれませんが、他の隠れた問題が怖い。。。



|> # 元々のExceptionをinitCauseしていなくて出所がわからず少し苦労しました。

このドライバのソース全体にいえることなんですが、
SQLException#initCause(Throwable)を一切使っていないように思います。

特に上の(ResultSet.java:5639)の部分の場合、ソースを見えればわかりますが、
initCauseを使用することで圧倒的にデバッグがしやすくなると思います。

initCauseをあえて使っていないとしても、その意図がよくわかりません。
パフォーマンスを気にするのであればこのようなドライバにはならないと思いま
すし。。。



|現在MySQL ABのConnectorsチームにてインターンを行っている者です。
|(Mark Matthewsの下で働いております)

MySQL信者としては非常にうらやましい環境です^^



|長沢さんが書かれている以下の現象ですとか、あるいは高橋さんが
|お感じになられている現Connector/Jへの不満点ですとか、
|よろしければ詳しいフィードバックをいただければと思うのですがいかがでしょうか。

個人的な要望としては、下位互換とシンプルで堅いドライバがほしいです。
ただ、Connector/Jを見ているとコンセプトが少し違うように思いますが。。。







P.S. 全く関係ないんですが、Excelのファイル名に[]を入れると
シート名が変更できなくなるのを今日発見しましたw

---
NAGASAWA Teruo <tech-ml@xxxxxxxxxx>



[前][次][番号順一覧][スレッド一覧]

     12200 2005-10-01 23:53 [NAGASAWA Teruo <tech] 皆さんの使っているJDBCドライバのバージョン
     12201 2005-10-01 23:53 ┣["TAKAHASHI, Tomohiro]                                       
     12202 2005-10-01 23:58 ┃┗["TAKAHASHI, Tomohiro]                                     
     12203 2005-10-02 00:23 ┃ ┗[NAGASAWA Teruo <tech]                                   
     12206 2005-10-03 15:28 ┗[Tetsuro IKEDA <tetsu]                                       
->   12211 2005-10-05 01:35  ┗[NAGASAWA Teruo <tech]                                     
     12212 2005-10-05 02:13   ┣[Tetsuro IKEDA <ikdtt]                                   
     12213 2005-10-05 06:22   ┣[Tetsuro IKEDA <ikdtt]                                   
     12214 2005-10-05 07:17   ┃┣[Tetsuro IKEDA <tetsu]                                 
     12216 2005-10-05 14:52   ┃┗["NAGASAWA Teruo" <te] Re: 皆さんの使っているJDBC= ?ISO-2022-JP?B?GyRCJUklaSUkJVAkTiVQITwlOCVnJXMbKEI=?=
     12217 2005-10-05 15:44   ┃ ┗["TAKAHASHI, Tomohiro] Re: 皆さんの使っているJDBC=?ISO-202 2-JP?B?GyRCJUklaSUkJVAkTiVQITwlOCVnJXMbKEI=
     12218 2005-10-05 17:00   ┃  ┗[NAGASAWA Teruo <tech]                             
     12215 2005-10-05 11:21   ┗["TAKAHASHI, Tomohiro]