将特殊字符转换为度数符号

时间:2011-08-05 10:00:28

标签: mysql

在我的mysql数据库中,我需要将特殊字符 转换为度数符号。我在sql中尝试了以下命令,但收到了错误消息。

更新注意设置NOTE_VALUE = replace(NOTE_VALUE,' ','°');

错误消息:

Illegal mix of collations (latin1_swedish_ci,IMPLICIT), (utf8_general_ci,COERCIBLE), (utf8_general_ci,COERCIBLE) for operation 'replace'.

我需要将特殊字符 转换为度数符号。

非常感谢任何帮助。

由于

2 个答案:

答案 0 :(得分:1)

您需要正确的值,但您应该可以通过整数值char(146)

来引用它
update NOTE set NOTE_VALUE = replace(NOTE_VALUE, char(XXX), '°');

XXX是一个值,你需要弄清楚

这篇文章可能是helpful

答案 1 :(得分:0)

如您所见there,您可以尝试更改表的排序规则(如果这不是问题)

ALTER table note convert to character set utf8 collate utf8_swedish_ci;

您还可以尝试上面提到的char()方法,但使用USING子句(link

UPDATE NOTE set NOTE_VALUE = replace(NOTE_VALUE, char(XXX USING latin1_swedish_ci), '°');