【问题标题】:Illegal mix of collations - MySQL fake table排序规则的非法混合 - MySQL 假表
【发布时间】:2019-04-10 01:50:54
【问题描述】:

我通过以下方式创建了一个假表:

SELECT 'B' a_name UNION ALL  
SELECT 'A' a_name

并尝试加入不同的表,但我看到了错误:

排序规则的非法混合(latin1_swedish_ci 隐式)和 (utf8_general_ci 强制)

我不是管理员,所以我无法更新表格排序规则,

这个问题有解决办法吗?

【问题讨论】:

标签: mysql sql


【解决方案1】:

您的另一个(实际)表似乎正在使用utf8_general_ci;而您的数据库连接/服务器配置设置为latin1_swedish_ci。也可以是其他方式。

不过,我们可以使用CONVERT() 函数,将“假表”更改为使用utf8(如果另一个(实际)表使用utf8)。

SELECT CONVERT('B' USING utf8) AS a_name UNION ALL  
SELECT CONVERT('A' USING utf8) AS a_name

【讨论】:

    猜你喜欢
    • 2012-08-28
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 2010-11-03
    • 2012-12-13
    • 2017-10-19
    相关资源
    最近更新 更多