ホームページ > データベース > mysql チュートリアル > JDBC で「0000-00-00 00:00:00」タイムスタンプ エラーを処理するにはどうすればよいですか?

JDBC で「0000-00-00 00:00:00」タイムスタンプ エラーを処理するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-11-03 08:22:03
オリジナル
1005 人が閲覧しました

How to Handle

JDBC エラー: 表現できないタイムスタンプの処理

Java アプリケーションでは、エラー メッセージ「...'0000-00-」が表示される場合があります。タイムスタンプ値を含む MySQL データベース テーブルをクエリする場合、00 00:00:00' は java.sql.Timestamp として表すことができません。これは、テーブルのデフォルトのタイムスタンプ値が「0000-00-00 00:00:00」であり、Java Timestamp クラスによれば無効な日付を表す場合に発生します。

JDBC ソリューション: ゼロ時点の動作の構成

データベース テーブル構造を変更せずにこの問題を解決するには、ゼロ時点の値を null として処理するように JDBC 接続を構成できます。これは、次のパラメータを JDBC URL に追加することで実現できます:

zeroDateTimeBehavior=convertToNull
ログイン後にコピー

変更された JDBC URL は次のようになります:

jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull
ログイン後にコピー

このパラメータを追加すると、データベースが返されるたびにタイムスタンプ値が「0000-00-00 00:00:00」の場合、JDBC ドライバーはそれを ResultSet 内の null 値に自動的に変換します。これによりエラーが解消され、問題なく ResultSet を処理できるようになります。

以上がJDBC で「0000-00-00 00:00:00」タイムスタンプ エラーを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート