yii2 - MySQL [23000] Column cannot be null
問題描述
MySQL 表結構字段 face char(20) NOT NULL 。插入數據的時候,當face值設置為NULL,報錯 MySQL SQLSTATE[23000]: Integrity constraint violation: 1048 Column ’face’ cannot be null
MariaDB [db2_dalu]> select version();+--------------------+| version() |+--------------------+| 5.5.41-MariaDB-log |+--------------------+1 row in set (0.00 sec)
但是我本地卻沒有這樣的情況,本地的MySQL版本:
mysql> select version();+------------+| version() |+------------+| 5.6.17-log |+------------+1 row in set (0.00 sec)mysql>
問題解答
回答1:你貼這個有什么用,明顯是插入的時候問題,應該貼插入的那條代碼啊。而且我覺得提示沒毛病啊,因為你要求不能為空,當你插入一個空值的時候,不提醒你反倒是奇怪了。
回答2:明明設置了not null,那肯定不能插入null空值啊,你之前說本地版本可以插入這一定是靈異現象。
回答3:版本高點,限制嚴格點的原因嗎?
回答4:這個。。不管是在MySQL的嚴格模式,還是非嚴格模式下,都可以設置空值是否提醒的。
相關文章:
1. mysql - SQL分組排序、隨機問題?2. html5 - iOS的webview加載出來的H5網頁,怎么修改html標簽select的樣式字體?3. node.js - webpack-dev-server正常運行,webpack打包卻出錯,怎么辦?4. python - 有沒有關于Pyhton web開發的相關論壇或者書?5. 下一個頁面的三角在上面一個頁面會出現,在縮放的時候會遮住文字。6. python3.x - c++調用python37. Python pyinstaller 打包后在其他電腦運行失敗8. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失敗!9. javascript - webpack打包問題10. javascript - 網頁中嵌套iframe,網頁和iframe viewport不同,怎么能讓iframe中的網頁不變形
