1. 程式人生 > 資料庫 >MySQL 8.0.13設定日期為0000-00-00 00:00:00時出現的問題解決

MySQL 8.0.13設定日期為0000-00-00 00:00:00時出現的問題解決

剛開始學習資料庫操作,今天存資料時發現,儲存的時候報錯(Error 1292: Incorrect datetime value: '0000-00-00' for column 'deleted_at' at row 1) ,之後就搜尋了下原因,是因為MySQL存日期時不允許出現這種格式導致的。下面記錄下解決問題的經過:

先是根據Mysql 資料庫date,datetime型別設定0000-00-00預設值報錯問題 這篇部落格操作的。但是發現。我電腦上沒有文章中提到的cnf檔案。於是就在網上搜索該檔案。貼上了my.cnf這個內容到/etc/my.cnf裡邊。
可是等我將

複製程式碼 程式碼如下:sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

貼上到檔案所在位置時,還是不成功。MySQL直接啟動不起來。後來在命令列中設定sql_mode的時候看到了錯誤提示:

mysql> SET GLOBAL sql_mode = 'ONLY_FULL_GROUP_BY,NO_ENGINE_SUBSTITUTION';
ERROR 1231 (42000): Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'

ERROR 1231 (42000): Variable 'sql_mode' can't be set to the value of 'NO_AUTO_CREATE_USER'意思就是不讓設定NO_AUTO_CREATE_USER

唄。那就不設定呀。之後再my.cnf檔案中的sql-mode一行去掉改值就成功了。

MySQL版本:8.0.13

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。