剛開始學(xué)習(xí)數(shù)據(jù)庫(kù)操作,今天存數(shù)據(jù)時(shí)發(fā)現(xiàn),保存的時(shí)候報(bào)錯(cuò)(Error 1292: Incorrect datetime value: '0000-00-00' for column 'deleted_at' at row 1)
,之后就搜索了下原因,是因?yàn)?code>MySQL存日期時(shí)不允許出現(xiàn)這種格式導(dǎo)致的。下面記錄下解決問(wèn)題的經(jīng)過(guò):
先是根據(jù)Mysql 數(shù)據(jù)庫(kù)date, datetime類型設(shè)置0000-00-00默認(rèn)值報(bào)錯(cuò)問(wèn)題 這篇博客操作的。但是發(fā)現(xiàn)。我電腦上沒有文章中提到的cnf
文件。于是就在網(wǎng)上搜索該文件。粘貼了my.cnf這個(gè)內(nèi)容到/etc/my.cnf
里邊。
可是等我將
復(fù)制代碼 代碼如下:
sql-mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
粘貼到文件所在位置時(shí),還是不成功。MySQL直接啟動(dòng)不起來(lái)。后來(lái)在命令行中設(shè)置sql_mode
的時(shí)候看到了錯(cuò)誤提示:
mysql> SET GLOBAL sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,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'意思就是不讓設(shè)置NO_AUTO_CREATE_USER
唄。那就不設(shè)置呀。之后再my.cnf
文件中的sql-mode
一行去掉改值就成功了。
MySQL版本:8.0.13
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- MySQL計(jì)算兩個(gè)日期相差的天數(shù)、月數(shù)、年數(shù)
- 詳解Mysql中日期比較大小的方法
- mysql中常用日期比較與計(jì)算函數(shù)
- MySQL日期函數(shù)與日期轉(zhuǎn)換格式化函數(shù)大全
- mysql 獲取昨天日期、今天日期、明天日期以及前一個(gè)小時(shí)和后一個(gè)小時(shí)的時(shí)間
- 詳解MySQL日期 字符串 時(shí)間戳互轉(zhuǎn)
- 詳解mysql 獲取當(dāng)前日期及格式化
- mysql日期處理函數(shù)實(shí)例解析