MySQL之Field‘***’doesn’t have a default value錯誤解決辦法_MySQL教程
推薦:mysql中字符串索引問題與例子字符串索引與數字索引有一些方面如果沒做好會非常的慢了,今天我們就一起來看看小編整理的一些mysql中字符串索引問題與例子了,因為字符索引相對來說也簡單文章就簡單的整理了一些例子,希望對各位有幫助。 事情的起因是線上日志發現的mysql慢查詢。100萬數據量的標準
今天,中國博客聯盟有博友反饋,zgboke.com無法提交博客,當時我正好準備去假日廣場聚會,就匆匆忙忙的提交試了下,發現提交博客的時候確實報如下錯誤:
提示web_pic不能為空值。很納悶,之前都可以成功提交的,為什么突然不行了?看了下網上的案例,說是需要修改MySQL的配置什么的,但是目前博客聯盟是掛在京東云擎的,數據庫不能修改配置,按理說之前可以正常提交,后面應該也可以才對啊!
由于聚會時間快到了,就先放在一邊了。回到家之后,對比了下網上的類似案例,原來是web_pic這個鍵值設置了不為空導致的,也就是在創建表的時候,使用了not null屬性。于是進入mywebsql,登入京東云擎數據庫,進行了如下操作:
提交后,發現可以成功提交了!出現這個錯誤的愿意,應該是我最近導入導出數據庫太頻繁,create tables語句出現錯誤導致的。
下面,整理一下網上的相同問題的其他解決辦法,方便出現問題的同學參考:
1、打開my.ini,查找
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
修改為
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
然后重啟MYSQL
2、MySQL 5 uses a strict mode which needs to be disabled.
In Windows, Goto Start-->Programs-->MySQL->MySQL Instance Config Wizard. Follow through the Reconfigure Instance option-->Detailed Configuration-->Continue Next a few screens. At the bottom under Enable TCP/IP option there is 'Enable Strict Mode'. Deslect this option (no tick). Save changes and MySQL will restart.
3、看看你的數據庫定義的時候是不是把主鍵生成方式設置為int的,但是沒有設置為自增的!!或者數據定義的時候設置一個默認值就可以了。
分享:mysql sharding(碎片)介紹1、Sharding 的應用場景一般都那些? 當數據庫中的數據量越來越大時,不論是讀還是寫,壓力都會變得越來越大。試想,如果一張表中的數據量達到了千萬甚至上億級別的時候,不管是建索引,優化緩存等,都會面臨巨大的性能壓力。sharding通過某種條件,把同一個數據庫中的
- 相關鏈接:
復制本頁鏈接| 搜索MySQL之Field‘***’doesn’t have a default value錯誤解決辦法
- 教程說明:
MySQL教程-MySQL之Field‘***’doesn’t have a default value錯誤解決辦法。