首頁 > 資料庫 > mysql教程 > 如何使用 JDBC 處理 MySQL 的 0000-00-00 00:00:00 DATETIME 值?

如何使用 JDBC 處理 MySQL 的 0000-00-00 00:00:00 DATETIME 值?

Barbara Streisand
發布: 2025-01-02 13:05:38
原創
635 人瀏覽過

How to Handle MySQL's 0000-00-00 00:00:00 DATETIME Values with JDBC?

對DATETIME 值0000-00-00 00:00:00 的JDBC 空處理

SQLSQL 處理DATE-My 值00:00:00作為「準空」值,以及嘗試從 JDBC 連線檢索字串等值可能會導致異常。

要處理此問題,請考慮使用以下解決方案:

選項1:轉換為CHAR

您可以在SQL 中將DATETIME 欄位明確轉換為CHAR查詢:

SELECT CAST(add_date AS CHAR) AS add_date
登入後複製

這將傳回原始DATETIME字串,而不將其轉換為特定資料類型。

選項2:使用JDBC 設定

或者,您可以使用ZeroDateTimeBehavior 設定JDBC URL參數:

jdbc:mysql://yourserver:3306/yourdatabase?zeroDateTimeBehavior=convertToNull
登入後複製

使用此配置,DATETIME 值0000-00-00 00:00:00將在結果集中自動轉換為 NULL。

zeroDateTimeBehavior 參數可以採用不同的值value:

  • 異常: 拋出異常(預設)
  • 🎜> 將值轉換為NULL
  • round: 將值四捨五入到最接近的值(0001-01-01)
請注意,此設定會影響資料庫中的所有DATETIME 欄位。

來源:

    MySQL手冊: https://dev.mysql.com/doc/connector-j/5.1/en/connector-j- reference-configuration-properties.html

以上是如何使用 JDBC 處理 MySQL 的 0000-00-00 00:00:00 DATETIME 值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板