postgresql因字符集原因无法正常显示中文
原因是客户端字符集和插入内容的字符集不匹配。PostgreSQL默认不做字符集转换,如果数据库是UTF8的字符集,一般终端的中文字符
集会设置为GBK(可以看LANG环境变量确认),所以这个编码不经转换的存入数据库中,而数据库是UTF8的,PostgreSQL发现不是
UTF8编码,就报上面的错。要想打开自动字符集转换功能,必须告诉 pg 客户端使用的字符集。这时可以设置pg客户端编码为GBK,pg
就会自动做字符集转换。
方法一:
打开CRT中的会话选项:在外观的选项中调整字符编码为“UTF-8”即可。
方法二: (enconding:编码;字符编码)
postgres=# show server_encoding; server_encoding ----------------- UTF8 (1 row) postgres=# show client_encoding; client_encoding ----------------- UTF8 (1 row) postgres=# \encoding GBK postgres=# show client_encoding; client_encoding ----------------- GBK (1 row)
更多技术请关注Python视频教程。