mysql 插入数据后显示乱码

来源:互联网 发布:数据库定时同步工具 编辑:程序博客网 时间:2024/05/16 14:53

【描述】

mysql数据编码中,数据库、数据表、数据字段都是有自己的编码,如果新建时不主动定义编码集,就会使用系统默认的编码集(mysql很可能是latin1)。


并且数据库、数据表、数据字段的是有优先级区别的,是数据字段 > 数据表 > 数据库。举个例子:


如果数据库使用utf-8,数据表使用ascii,数据字段使用latin1。这时,你的mysql对外表现的数据编码集就是latin1,如果传输进来的数据的编码方式是utf-8,就不可能解析成功。


【解决方案】

将字段编码改成你需要的编码(比如 utf-8),这时由于优先级的存在,数据库和数据表的编码方式就会被忽视。


【总结】

设计数据库的时候,尽量自己设置字符集,不要使用系统默认的编码方式,避免出现不可预知的问题而浪费时间。

1 0
原创粉丝点击