【发布时间】:2019-10-14 19:27:27
【问题描述】:
我在一个带有 utf8mb4 排序规则的 mysql 数据库中有一个 mediumtext 列:
cmets mediumtext utf8mb4_unicode_ci
当我执行 mysql ENCODE 时,文本被保存到数据库列:
INSERT INTO mytable VALUES (ENCODE('test', 'abc'));
但是,当我尝试解码时,它的输出文本是乱码:
SELECT DECODE(comments,'abc') FROM mytable WHERE 1
这个例子会显示:
�1�= g3���
如果我将该列更改为 latin1_swedish_ci,则一切正常,并显示“测试”。请注意,我正在保存通过 php 表单输入“测试”文本,但不以任何方式处理数据。
1 - 关于为什么会发生这种情况的任何想法?
2 - 有没有办法解码乱码?试了好几种方法都没用。
谢谢!
【问题讨论】: