开发者社区> 问答> 正文

nodejs查询mysql数据库的数据显示乱码

nodejs 查询mysql数据库的数据显示乱码

运行nodejs代码,结果如下:

D:Program Filesnodejs>NODE E:projecttestsqlServer.js
[ RowDataPacket { id: 1, name: 'ÕÅÈý', sex: 'Å®' },
RowDataPacket { id: 2, name: 'ÕÅÄÐ', sex: 'Å®' } ]
[ RowDataPacket { id: 1, name: 'ÕÅÈý', sex: 'Å®' },
RowDataPacket { id: 2, name: 'ÕÅÄÐ', sex: 'Å®' } ]

nodejs代码如下:
888

mysql数据库的语句如下:
999
在mysql下查询的结果:
1111
请问这个问题应该怎样解决?

展开
收起
蛮大人123 2016-02-12 13:15:11 5852 0
2 条回答
写回答
取消 提交回答
  • 因为MySQL客户端输出窗口显示中文时,使用的字符编码不对造成的
    show variables like 'char%'; ---》看看是不是 utf8

    改成 set character_set_results=gb2312;

    上面是临时方案,最好的办法是 修改my.ini文件

    default-character-set=gb2312

    character-set-server=utf8

    2019-07-17 18:41:17
    赞同 展开评论 打赏
  • 我说我不帅他们就打我,还说我虚伪

    连接加一个参数charset试试?
    2222
    或者在默认的mysqld的配置文件my.ini中的mysqld节加入character-set-server=utf8后,然后重启mysqld服务
    参考:
    http://cnodejs.org/topic/55064b12bba4ad18669f773a

    2019-07-17 18:41:17
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
探究 Node.js 的服务端之路 立即下载
个推微服务实践 基于OpenResty 和Node.js 立即下载
沪江基于Node.js大规模应用实践 立即下载

相关镜像