1. 程式人生 > >向 mysql 插入漢字時報錯 Incorrect string value: 'xE6x9BxB9xE5x86xAC...' for col....

向 mysql 插入漢字時報錯 Incorrect string value: 'xE6x9BxB9xE5x86xAC...' for col....

str 使用 需要 memento set like 好習慣 address 數據

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..

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