【发布时间】:2018-03-26 20:44:02
【问题描述】:
我正在尝试为会话设置客户端编码。我在 linux 终端上运行以下命令(安装在远程服务器上的 postgresql。
psql -h localhost -p 5432 -U user -d dbase -c "SET client_encoding to 'LATIN1';"
输出:设置
psql -h localhost -p 5432 -U user -d dbase -c "show client_encoding"
输出:UTF8
为什么会这样?我需要以超级用户身份运行此命令吗? (我不这么认为)
如果我在 Pgadmin4 上运行以下命令,那么它会正确显示 LATIN1 作为输出。
SET client_encoding to 'LATIN1'
show client_encoding
服务器编码设置为 UTF8。
【问题讨论】:
-
SET client_encoding to 'LATIN1';不是持久化的,它只为当前会话/连接设置。 -
是的,我只想要一个会话。如果您同时运行上述 2 个命令,那么它是否至少不会为该会话输出“LATIN1”?
-
我理解我的错误是每次编写 psql 命令都会创建一个新会话,因此编码默认为原始。如何永久更改?
标签: postgresql encoding psql