MySQL函数将用Latin1编码的文本字段转换为UTF8

时间:2014-03-17 14:55:33

标签: php mysql utf-8 latin1

我想将使用latin1编码的当前MySQL数据库转换为使用utf-8编码的新数据库。

如何使用utf-8编码将旧数据(文本字段)正确导入到新数据库的表中? 我以为我可以使用如下查询:

insert into newTable (newField) select latin2utf8(oldField) 
from oldTable

我正在寻找的是SQL函数或函数的组合,它们在查询中提到latin2utf8

是否有用于转换数据的SQL方法,如我所述,在此命令中使用?

1 个答案:

答案 0 :(得分:3)

在从旧数据库读取行的查询中,首先将列转换为二进制,然后将其转换回utf8,如下所示:

select convert(binary convert(field_name using latin1) using utf8) 
from table_name