【发布时间】:2012-06-10 05:46:33
【问题描述】:
在我的数据库中,排序规则最初是 utf8_general_ci。但是,我注意到 utf8_unicode_ci 是必要的,因为它的排序精度更高。
所以我使用 phpmyadmin 导出了所有数据库,并检查了导出的 sql 文件中没有出现“COLLATION”一词(除了在一个设置为二进制的表中只有 2 次),所以通常这个脚本与排序规则无关,并且导入时不应暗示任何特定的排序规则,而是使用数据库默认值。
删除所有表后,数据库排序规则更改为 utf8_unicode_ci,然后从 phpmyadmin 运行导入脚本。但结果,所有表和所有列都再次显示 utf8_general_ci 排序规则(并且排序不正确)。为什么??以及如何改变它?
附:导出/导入脚本的开头包含注释行:
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
不知道在导入的时候有没有影响,但是打开mysql控制台后,命令show variables like 'collation_connection'显示COLLATION_CONNECTION为cp852_general_ci。
但是,在 phpmyadmin->variables 中,变量 'collation_connection' 设置为 utf8_general_ci。但是没有办法改变它。
【问题讨论】:
标签: mysql phpmyadmin collation