mysql 的date類型 的支持范圍是1000-01-01到9999-12-31
datetime類型的支持范圍是1000-01-01 00:00:00 到9999-12-31 23:59:59
如果嘗試把超出范圍的值插入數據庫中,則會報標題中的錯誤。
有效的處理方法有兩種:
1、程序中檢查日期的范圍,當超出時給出提示或其他處理
2、在mysql 安裝目錄的my.ini 裡找到sql-mode=”STRICT_TRANS_TABLES,NO_AUTO_Create_USER,NO_ENGINE_SUBSTITUTION”
把其中的STRICT_TRANS_TABLES,去掉,然後重啟mysql。
采用第二種方法的時候,當日期超出范圍時,插入數據庫時不報錯,但會是一個0000-00-00 或者0000-00-00 00:00:00
摘自 Lwei的博客