如果你是一位軟件工程師,你肯定會頻繁地使用到MySQL。MySQL 是一個流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它具有開源、高效、可靠等優(yōu)點(diǎn),因此受到許多用戶的喜愛。
然而在安裝過程中,你可能會遇到一些問題,比如出現(xiàn)錯誤代碼“1364”。這篇文章將介紹如何解決這個問題。
ERROR 1364 (HY000): Field 'XXXXX' doesn't have a default value
上面的錯誤提示出現(xiàn)的原因是 mysql 的默認(rèn)模式發(fā)生了改變。mysql 5.7 開始,默認(rèn)的 sql_mode 設(shè)置為'NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER',其中 'NO_AUTO_CREATE_USER' 模式禁止了未指定默認(rèn)值的字段(非空字段)自動設(shè)置為默認(rèn)值。
解決方法:
在 mysql 5.7 及更高版本中,可以通過修改 sql_mode 參數(shù)值,將 'NO_AUTO_CREATE_USER' 模式移除,這樣就能允許未指定默認(rèn)值的字段(非空字段)自動設(shè)置為默認(rèn)值。
mysql >SET sql_mode='NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO';
這樣就可以解決 ERROR 1364 錯誤了。在安裝 mysql 時,需要留意 mysql 的版本管理,以及對于錯誤提示的處理方法。