向 mysql 插入漢字時報錯 Incorrect string value: '\xE6\x9B\xB9\xE5\x86\xAC...' for col....


Incorrect string value: '\xE6\x9B\xB9\xE5\x86\xAC...' for column 'realname' at row 1

該情況一般是由數據庫設計時的編碼錯誤導致的。

show variables like 'character%'   查看數據庫編碼,為latin1。

    

如果項目正在測試當中,數據不重要的話,一勞永逸的解決辦法是,使用 alert database tuanplus character set utf8 更改數據庫的編碼格式,再重新建表。

注意:在 Hibernate中,指定hibernate.hbm2ddl.auto=create,重新部署項目,hibernate會自動重新建表。

     

如果項目中的數據是重要數據的話,使用 alter table address convert to character set utf8 轉換需要插入漢字的數據表編碼為utf8即可(此例中的數據表是address):

    

為免操作不當,事先最好先備份好數據。

 

備份是個好習慣,是吧  *~*

  

memento..


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM