首頁 > 資料庫 > mysql教程 > 如何修復 MySQL 錯誤 1292:「日期時間值不正確」?

如何修復 MySQL 錯誤 1292:「日期時間值不正確」?

Patricia Arquette
發布: 2024-12-02 09:07:13
原創
676 人瀏覽過

How to Fix MySQL Error 1292:

不正確的日期時間值:解決MySQL 錯誤1292

在轉換日期時間值儲存為“0000-00-00 00”的現有資料庫時: 00:00',使用者可能會遇到MySQL 錯誤1292:「日期時間值不正確。」出現此錯誤的原因是原始 MySQL 資料庫(例如 5.1)和較新版本(例如 5.7)之間存在版本衝突,它們對日期時間值的處理方式不同。

要解決此問題,可以採取以下步驟:

選項1:將'0000-00-00 00:00:00' 轉換為NULL

  1. 嘗試使用以下查詢將包含'0000-00-00 00:00:00' 的日期時間列轉換為NULL:
ALTER TABLE users MODIFY created datetime NULL DEFAULT '1970-01-01 00:00:00';
登入後複製

如果失敗,請繼續執行選項2.

選項2:使用CHAR 轉換選項2:使用CHAR 轉換

  1. 僅當日期時間列的值為'0000-00- 時,才透過將日期時間列設為NULL 來更新受影響的行00 00:00:00' 作為一個字元string:
UPDATE users SET created = NULL WHERE CAST(created AS CHAR(20)) = '0000-00-00 00:00:00';
登入後複製

此替代查詢使用CAST 函數將日期時間值轉換為20 個字元的字串,並且僅更新結果與'0000-00-00 00:00相符的行: 00'.

更新完成後,您應該能夠成功修改資料庫表的字元集和排序規則,而不會遇到錯誤的日期時間值錯誤。

以上是如何修復 MySQL 錯誤 1292:「日期時間值不正確」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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