2010-11-18 23 views
1

我的一些mysql数据库表被偶然创建为latin1而不是utf8。我现在试图通过将列更改为它们的二进制类型然后将它们转换为utf8然后将它们更改回它们的原始类型来解决问题。问题是我收到以下错误,当我尝试这样做:如何解决在尝试从mysql中的Latin1转换为UTF8时出错的字符串值?

ERROR 1366 (HY000) at line 524: Incorrect string value: '\xB4s whi...' for column 'sName' at row 73 

我怎样才能防止这种情况的发生,将我列/表为utf8?

+0

请添加你如何做整理转换 – ajreal 2010-11-18 18:31:25

回答

2

\ xB4是Latin1代码页中的“尖锐重音”字符,必须在UTF-8中重新编码为2字节字符。你想要做的是改变编码,而不是先改变为二进制。这将让服务器正确地重新编码字符。

相关问题