解决postgresql乱码的方法

解决postgresql乱码的方法

小编给大家分享一下解决postgresql乱码的方法,相信大部分人都还不怎么了解,因此分享这边文章给大家学习,希望大家阅读完这篇文章后大所收获,下面让我们一起去学习方法吧!

查看pg客户端字符编码:

 show client_encoding

查看pg服务端字符编码:

show server_encoding

PostgreSQL [ERROR: invalid byte sequence for encoding "UTF8": 0xc0ee]

原因是没有正确设置客户端字符集。

默认情况下,PostgreSQL是不转换字符集的,如果你的数据库是UTF8的字符集,一般终端的中文字符集会设置为GBK,或en_US(查看

终端的字符集可以看LANG环境变量的设置),所以你输入的中文是GBK的编码,这个编码不经转换的存入数据库中,而数据库是UTF8

的,PostgreSQL一看没有这样的UTF8编码,所以当然报错了。

解决方法:

方法一:设置postgresql的客户端编码为GBK,这时PostgreSQL就知道输入的内容是GBK编码的,这样PostgreSQL数据库会自动做字符

集的转换,把其转换成UTF8编码。

方法二:直接设置终端的字符集编码为UTF8,让输入的编码直接为UTF8,而不是GBK。

以上是解决postgresql乱码的方法的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!