Postgresql:设置默认的 psql 客户端编码

Ada*_*tan 13 postgresql psql configuration encoding

当我使用 连接到 Postgresql 数据库时psql,我经常收到以下消息:

=> SELECT * FROM question_view ;
ERROR:  character with byte sequence 0xd7 0x9e in encoding "UTF8" has no equivalent in encoding "LATIN1"
Run Code Online (Sandbox Code Playgroud)

按照这个SO answer,我知道我应该相应地更改客户端编码:

SET client_encoding = 'UTF8';
Run Code Online (Sandbox Code Playgroud)

client_encoding每次连接到数据库时更改都很麻烦。有没有办法在.pgpass文件中或其他任何地方永久配置此设置?

a_h*_*ame 15

有没有办法在 .pgpass 文件或其他任何地方永久配置此设置

是的:它是~/.psqlrc(或%APPDATA%\postgresql\psqlrc.conf在 Windows 中)

有关详细信息,请参阅手册:http : //www.postgresql.org/docs/current/static/app-psql.html#AEN88713

  • 将 `SET client_encoding = 'UTF8';` 添加到 `~/.psqlrc` 就可以了。谢谢! (2认同)