在 PHP 中执行 MySQL 查询时,我收到“操作‘=’的排序规则 (latin1_general_ci,IMPLICIT) 和 (latin1_swedish_ci,IMPLICIT) 非法混合”错误。奇怪的是,当我在 phpMyAdmin 窗口中运行完全相同的查询时,它有效,但在 PHP 中运行时却失败。
PHP 查询使用“用户定义变量”,但我不确定这是否与这个问题有关。
这些是我的运行数据库的服务器的设置:
character set client utf8
(Global value) latin1
character set connection utf8
(Global value) latin1
character set database latin1
character set filesystem binary
character set results utf8
(Global value) latin1
character set server latin1
character set system utf8
collation connection utf8_general_ci
(Global value) latin1_swedish_ci
collation database latin1_swedish_ci
collation server latin1_swedish_ci
我已经花了几个小时来解决这个问题,但还是无法解决。我真的不知道该怎么办。我必须修改上面的服务器设置吗?我的托管服务提供商上周将我转移到了一台新服务器,我认为这与此有关,但我想先知道问题是什么。
任何帮助和解决方案都将不胜感激。
谢谢