当我使用 连接到 Postgresql 数据库psql
时,我经常收到以下消息:
=> SELECT * FROM question_view ;
ERROR: character with byte sequence 0xd7 0x9e in encoding "UTF8" has no equivalent in encoding "LATIN1"
按照这个SO answer,我知道我应该相应地更改客户端编码:
SET client_encoding = 'UTF8';
client_encoding
每次连接到数据库时更改都很麻烦。有没有办法在.pgpass
文件或其他任何地方永久配置此设置?
是的,有:它是
~/.psqlrc
(或%APPDATA%\postgresql\psqlrc.conf
在 Windows 中)有关详细信息,请参阅手册:http ://www.postgresql.org/docs/current/static/app-psql.html#AEN88713
我遇到了同样的错误,但在我的 ODBC 连接中从 ANSI(X64) 更改为 Unicode(x64) 解决了我的问题。