ERROR 1366 (HY000): Incorrect string value......(Mysql报错解决)
生活随笔
收集整理的這篇文章主要介紹了
ERROR 1366 (HY000): Incorrect string value......(Mysql报错解决)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019.11.29更新:發現了新的解決方法
錯誤描述
在控制臺執行插入操作的時候,Mysql報錯ERROR 1366 (HY000): Incorrect string value……插入操作失敗,如下圖所示
報錯原因:
因為插入的數據中包含中文字符,而現在的mysql的字符集無法表示中文字符,所以才會有上述的錯誤。
問題解決
既然在mysql的控制臺無法插入,就嘗試在Navicat執行插入的代碼,如下圖:
在Navicat打開數據表一看,發現居然插入成功了(似乎問題已經解決了)
但是,在MySQL的控制臺執行查詢操作,發現所有的中文都顯示為亂碼。
于是,我們執行set name gbk;命令,可以看到現在亂碼問題已經解決了。關于這個命令,我發現有個大佬寫得很詳細,這里不加贅述:mysql set names 命令和 mysql 字符編碼問題
新的解決方案:
在一開始先執行set name gbk;命令,再執行數據插入操作就不會出現保存了。不同的MySQL版本之間可能會有差異,我的MySQL版本是5.6。
補充
在查找資料的時候,發現了一些有用的命令,記錄一下:
- 查看各級的字符集編碼
- 修改數據庫的字符編碼
- 修改數據表的字符編碼
- 修改數據表字段的字符編碼
解決方法有點非正統,但也算是解決了我的問題,如果下次遇到其他情況在進行補充。
總結
以上是生活随笔為你收集整理的ERROR 1366 (HY000): Incorrect string value......(Mysql报错解决)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: H. Texas hold'em Pok
- 下一篇: B. super_log(2019ICP