我的一些文本显示得很奇怪,我需要替换上面的一些字符。但是,我在处理特定字符时遇到了问题,即以下字符(javascript 代码,以显示字符之间的区别):
<script>
alert('–'.charCodeAt(0) + ':' + '-'.charCodeAt(0));
</script>
在 MySQL 中,我尝试应用以下查询:
UPDATE translation SET columnx = REPLACE(columnx, '–', '-');
但它影响了 0 行。因此问题是,将这些奇怪的字符替换为正确字符的正确查询是什么?
更新
奇怪的字符是这样显示的(正方形):
在JSON中,它被编码为\u0096
而不是-
最佳答案
正如 Alvaro 所说,您真的应该尝试将数据库更改为正确的字符集。通常 utf-8 字符集应该足够了。
更多信息请看这里: http://dev.mysql.com/doc/refman/5.0/en/charset-applications.html
如果您无权这样做,请查看: http://dev.mysql.com/doc/refman/5.1/de/charset-convert.html 和 https://dba.stackexchange.com/questions/9944/mysql-transfer-iso-8859-1-to-utf-8
关于mysql - 替换 MySQL 中的奇怪字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13952251/