MAC终端乱码问题解决方法

最近在研究SQL语言,用的PostGreSQL平台。

进行插入语句insert时,发现有中文乱码的现象。

runoobdb=# insert into result values('张?', '语?', 81);

怎么解决这个问题呢。

首先,想到的是,PostGreSQL的服务端和客户端的编码是否有问题。

runoobdb=# show client_encoding;
 client_encoding 
-----------------
 UTF8
(1 row)

runoobdb=# show server_encoding;
 server_encoding 
-----------------
 UTF8
(1 row)

发现客户端和服务端都是UTF8编码。

所以讲客户端改为GBK编码支持中文,操作如下:

runoobdb=# set client_encoding to 'GBK';
SET
runoobdb=# show client_encoding;
 client_encoding 
-----------------
 GBK
(1 row)

结果依旧存在中文乱码问题。

其次,想到了,MAC终端的编码问题造成的中文乱码。

原因是locale没有设置成utf-8。

在终端下输入:

vi ~/.zshrc

在文件内容末端添加:

export LC_ALL=en_US.UTF-8  
export LANG=en_US.UTF-8

让设置生效

source ~/.zshrc

 最后重启终端。

最后,如果还存在中文乱码问题,启用大杀招。

打开终端,点击左上方的终端-->偏好设置-->设置-->高级-->字符编码-->中文(GBK)。

来验证一下,中文乱码问题是否解决了。

进入数据库,输入以下语句:

runoobdb=# select * from result;
 name | kecheng | fenshu 
------+---------+--------
 张三 | 语文    |     81
(1 row)

 

奇迹出现了,中文乱码问题解决了。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值