原因分析:
實(shí)踐調(diào)試過(guò)程中發(fā)現(xiàn)mysql5以上版本,如果是空值應(yīng)該要寫NULL,數(shù)據(jù)庫(kù)的字段如果空都應(yīng)該設(shè)置默認(rèn)值,否則就會(huì)報(bào)上面的錯(cuò)誤;
這種情況說(shuō)明這時(shí)候數(shù)據(jù)庫(kù)開(kāi)啟的是默認(rèn)的嚴(yán)格模式;
注意:這種問(wèn)題一般mysql 5.x上出現(xiàn)?。?/span>解決辦法:
首先使用Select version();查看版本,一般會(huì)版本不一致;
官方解釋說(shuō):新版本mysql對(duì)空值插入有"bug"?。。?!
需要在安裝mysql的時(shí)候去除默認(rèn)勾選的enable strict SQL mode(也就是剛才說(shuō)的嚴(yán)格模式)
那么如果我們安裝好了mysql怎么辦了,解決辦法是更改配置文件,關(guān)閉嚴(yán)格模式??!
開(kāi)啟與關(guān)閉Strict Mode方法??!
找到mysql安裝目錄下的my.cnf(windows系統(tǒng)則是my.ini)文件
在sql_mode中加入STRICT_TRANS_TABLES則表示開(kāi)啟嚴(yán)格模式,如沒(méi)有加入則表示非嚴(yán)格模式,修改后重啟mysql即可!!