アプリ版:「スタンプのみでお礼する」機能のリリースについて

MySQLのDATE型カラム値がNULLの時、JSTL文でアクセスすると、値が入っているとアクセスできますが、値が入っていないと

" Value '0000-00-00' can not be represented as java.sql.Date "

エラーでアクセスできません。

環境は
Windows2000Pro
MySQL 4.1
J2SE SDK5.0
JSTL standard-1.1
Tomcat 5.5.9

MySQLのテーブルは
CREATE TABLE addressbook (
id smallint(4) UNSIGNED NOT NULL auto_increment,
name1 varchar(20) default NULL,
birthday date default NULL,
PRIMARY KEY (id)
) ENGINE=MyISAM DEFAULT CHARSET=sjis;

mysql> select * from addressbook; で確認すると birthdayの値が 000-00-00 となっています。
対処方法のご教授お願いします

A 回答 (2件)

mysql4.1から 0000-00-00の日付をjavaの日付に変換できない


エラーが発生した記憶があります。

mysql接続の際にゼロ日付をnullにコンバートすればいけると思います。
zeroDateTimeBehavior=convertToNull
をつけてみてください。
例)
jdbc:mysql://localhost/DB_NAME?useUnicode=true&characterEncoding=Shift_JIS&zeroDateTimeBehavior=convertToNull
    • good
    • 0
この回答へのお礼

ありがとうございました。
おかげさまで解決しました。
4.1に変えてからてこずっています、又よろしくお願いします。

お礼日時:2006/06/16 21:32

null値にならないようにする

    • good
    • 0
この回答へのお礼

回答ありがとうございます。
null値の場合があるので、困っています。

お礼日時:2006/06/16 21:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!