我正在使用两个连接迁移我的数据库(一个连接到旧连接,另一个连接到新连接)。 在我正在执行的两个连接上:
mysqli_set_charset($connection, "utf8");
mysqli_query($connection, "SET NAMES utf8");
此外,PHP文件使用vim中的以下命令将fileencoding设置为utf-8:
:set bomb
:set fileencoding=utf-8
:wq
源表和目标表都将各自的字段设置为" utf8_general_ci"排序规则。
源代码位于MySql 5.0上,目标位于MySql 5.5
上我也在从源代码中提取的内容上使用mysqli_real_escape_string。
上述步骤似乎不起作用,因为unicode数据(以utf-8编码)转换为目标中的问号。我做错了什么?
(另请注意,由于表格结构正在发生变化,我无法直接导入目的地中的数据。)
答案 0 :(得分:0)
源表和目标表都将各自的字段设置为" utf8_general_ci"排序规则。
看起来目的地表没有
答案 1 :(得分:-1)
发现问题:
虽然字段和表格设置为“utf8_general_ci”排序规则,但数据库本身设置为“latin1_swedish_ci”排序规则。
将排序规则更改为“utf8_general_ci”并解决了问题。