Mysql O和Ö;顺序与Zend_Db中的顺序相同
当我从数据库中提取对象并运行Zend magic函数->Order(),或者作为普通SQL(例如,title)运行时,那些包含瑞典语字符的对象被解释为aao。它的排序是错误的,要么是a,要么是o,而实际上它应该最后一次订购 有人知道怎么解决这个问题吗?看起来像个白痴,没有结果Mysql O和Ö;顺序与Zend_Db中的顺序相同,mysql,sql,zend-framework,zend-db,Mysql,Sql,Zend Framework,Zend Db,当我从数据库中提取对象并运行Zend magic函数->Order(),或者作为普通SQL(例如,title)运行时,那些包含瑞典语字符的对象被解释为aao。它的排序是错误的,要么是a,要么是o,而实际上它应该最后一次订购 有人知道怎么解决这个问题吗?看起来像个白痴,没有结果 编辑:数据库的排序规则为utf8\U unicode\U ci,编码为utf8。我曾尝试改为utf8_瑞典语_ci,但没有成功。恐怕我需要保留utf8,否则我就别无选择了?您的MySQL数据库是否设置为使用正确的排序规则?
编辑:数据库的排序规则为utf8\U unicode\U ci,编码为utf8。我曾尝试改为utf8_瑞典语_ci,但没有成功。恐怕我需要保留utf8,否则我就别无选择了?您的MySQL数据库是否设置为使用正确的排序规则?我认为默认情况下,它被设置为瑞典语排序规则
latin1\u Swedish\u ci
:
但是,如果它被改成其他字符(如latin1
),它可能会对重音字符进行不同的排序
以下是有关如何为特定数据库、列或表指定要使用的排序规则的说明:
编辑:瑞典语排序规则是您想要的:但您可能使用的是通用排序规则:+1我一开始读错了,对不起。这正是他所需要的。唯一值得注意的是,排序规则的运行时转换很慢。对于大型数据集,可以创建一个单独的,
latin1\u swedish\u ci
collated列进行排序。就这么简单!我只需要将列的排序改为拉丁文1_瑞典语ci,然后它就完全按照我的要求开始工作了。有点遗憾,我没有自己解决。Thx用于快速响应。