Mysql 使用现有数据更改数据库编码
如果我将数据库、表格和相关列的编码从Mysql 使用现有数据更改数据库编码,mysql,encoding,character-encoding,Mysql,Encoding,Character Encoding,如果我将数据库、表格和相关列的编码从latin1\u swedish\u ci(默认)更改为utf8\u general\u ci,以显示欧洲字符和其他字符,这将适用于任何现有数据,还是仅适用于新插入 目前,我的名字显示为Rubén,即使将该列的编码更改为utf8\u general\u ci,它们也无法自行修复 我是否必须将数据重新导入数据库,或者是否可以对现有数据“就地”应用编码更改?这可能会有所帮助: UPDATE table SET column=CONVERT(CONVERT(col
latin1\u swedish\u ci
(默认)更改为utf8\u general\u ci
,以显示欧洲字符和其他字符,这将适用于任何现有数据,还是仅适用于新插入
目前,我的名字显示为Rubén
,即使将该列的编码更改为utf8\u general\u ci
,它们也无法自行修复
我是否必须将数据重新导入数据库,或者是否可以对现有数据“就地”应用编码更改?这可能会有所帮助:
UPDATE table SET column=CONVERT(CONVERT(column USING binary) USING utf8) WHERE id=123;
资料来源:
DB如何知道这些字符在人类眼中实际上是畸形的?它所知道的是,它被告知要准确地存储这些字符。所以,是的,你基本上需要自己转换它们。我认为内部存储的数据可能没有问题,但解码不正确。@Andre请将此作为答案,我会接受的。我的问题已经解决了。非常感谢。