MySQL [Warning] TIMESTAMP with implicit DEFAULT value is deprecated(報錯信息解決)
MySQL使用過程中可能會遇到一些報錯信息。本文將介紹一些常見的MySQL報錯信息,并提供相應(yīng)的解決方法。
報錯信息
[Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). [Warning] 'ERROR_FOR_DIVISION_BY_ZERO' is deprecated and will be removed in a future release. [Warning] 'NO_ZERO_DATE' is deprecated and will be removed in a future release. [Warning] 'NO_ZERO_IN_DATE' is deprecated and will be removed in a future release.
TIMESTAMP with implicit DEFAULT value is deprecated
當(dāng)在MySQL中創(chuàng)建表時,如果使用了隱式默認(rèn)值的TIMESTAMP類型,會收到此警告信息。這是因?yàn)殡[式默認(rèn)值的TIMESTAMP類型在未來的版本中將被棄用。為了解決這個問題,我們可以在MySQL的配置文件中進(jìn)行相應(yīng)的設(shè)置。
打開MySQL的配置文件(my.ini或者my.cnf),找到包含[mysqld]的段落,在該段落中添加以下行:
explicit_defaults_for_timestamp=true
這樣設(shè)置后,MySQL將不再使用隱式默認(rèn)值的TIMESTAMP類型,而是需要顯式地指定默認(rèn)值。
'ERROR_FOR_DIVISION_BY_ZERO' is deprecated and will be removed in a future release
當(dāng)在MySQL中進(jìn)行除零操作時,如果使用了ERROR_FOR_DIVISION_BY_ZERO模式,會收到此警告信息。這是因?yàn)镋RROR_FOR_DIVISION_BY_ZERO模式在未來的版本中將被移除。為了解決這個問題,我們需要修改MySQL的sql_mode設(shè)置。
在MySQL的配置文件中,找到sql_mode的設(shè)置項(xiàng),將其中包含ERROR_FOR_DIVISION_BY_ZERO的部分移除。例如,將以下設(shè)置:
sql_mode="ONLY_FULL_GROUP_BY,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES"
修改為:
sql_mode="ONLY_FULL_GROUP_BY,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES"
這樣設(shè)置后,MySQL將不再使用ERROR_FOR_DIVISION_BY_ZERO模式,從而避免報錯。
'NO_ZERO_DATE' and 'NO_ZERO_IN_DATE' are deprecated and will be removed in a future release
當(dāng)在MySQL中插入或更新日期列時,如果使用了NO_ZERO_DATE或NO_ZERO_IN_DATE模式,會收到此警告信息。這是因?yàn)镹O_ZERO_DATE和NO_ZERO_IN_DATE模式在未來的版本中將被移除。為了解決這個問題,我們需要修改MySQL的sql_mode設(shè)置。
在MySQL的配置文件中,找到sql_mode的設(shè)置項(xiàng),將其中包含NO_ZERO_DATE和NO_ZERO_IN_DATE的部分移除。例如,將以下設(shè)置:
sql_mode="ONLY_FULL_GROUP_BY,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES"
修改為:
sql_mode="ONLY_FULL_GROUP_BY,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES"
這樣設(shè)置后,MySQL將不再使用NO_ZERO_DATE和NO_ZERO_IN_DATE模式,從而避免報錯。
通過以上的設(shè)置,可以解決一些常見的MySQL報錯問題,確保數(shù)據(jù)庫的正常運(yùn)行。
到此這篇關(guān)于MySQL [Warning] TIMESTAMP with implicit DEFAULT value is deprecated(報錯信息解決)的文章就介紹到這了,更多相關(guān)mysql報錯信息內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
mysql主從基于docker和django實(shí)現(xiàn)讀寫分離
這篇文章主要介紹了mysql主從基于docker和django實(shí)現(xiàn)讀寫分離,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-08-08
MySQL 大表的count()優(yōu)化實(shí)現(xiàn)
這篇文章主要介紹了MySQL 大表的count()優(yōu)化實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
MySQL數(shù)據(jù)庫中的嵌套查詢實(shí)例詳解
這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)庫中嵌套查詢的相關(guān)資料,嵌套查詢是SQL中的一種技術(shù),允許在一個查詢語句的某個部分嵌入另一個查詢,它主要用于處理復(fù)雜的邏輯,如多層條件過濾和數(shù)據(jù)對比,需要的朋友可以參考下2024-12-12
MySQL導(dǎo)入數(shù)據(jù)權(quán)限問題的解決
本文主要介紹了MySQL導(dǎo)入數(shù)據(jù)權(quán)限問題的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
MySQL?驅(qū)動中虛引用?GC?耗時優(yōu)化與源碼分析
這篇文章主要為大家介紹了MySQL?驅(qū)動中虛引用?GC?耗時優(yōu)化與源碼分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
MYSQL數(shù)據(jù)庫Innodb?引擎mvcc鎖實(shí)現(xiàn)原理
這篇文章主要介紹了MYSQL數(shù)據(jù)庫Innodb?引擎mvcc鎖實(shí)現(xiàn)原理,但是mvcc?的實(shí)現(xiàn)原理是什么呢?下文我們就來實(shí)例說明來mvcc?的實(shí)現(xiàn)原理,感興趣的小伙伴可以參考一下2022-05-05

