2

我的应用程序中有一个子域系统,当我登录我的办公室时,它的登录很好,但是当我登录其他城市或国家时,我收到了这个错误。

有时工作正常,有时不工作。假设如果我的登录 ID 是 xyz@india.com,当我打印此登录 ID 时,我会在登录 ID 之前获得一些特殊字符。

致命错误:未捕获的异常“Zend_Db_Statement_Mysqli_Exception”和消息“Mysqli 准备错误:非法混合排序规则(latin1_swedish_ci,IMPLICIT)和(utf8_general_ci,COERCIBLE)用于操作“=”

4

1 回答 1

0

这通常是由比较排序规则不兼容的两列引起的。COLLATE方法将允许您指定查询中使用的排序规则,因此不会返回此类错误。

如果您不需要任何排序规则而只需要比较,您可以考虑将“CHARACTER SET BINARY”添加到列定义中。这将使用 BIN 集合集,并且无论连接字符串或列排序规则设置如何,都将允许等于。

于 2013-03-11T13:10:34.493 回答