使用Windows PostgreSQL终端连接到相同的数据库,我们在2台不同的机器(一台中文,一台英文)中获得了不同语言的响应。我无法弄清楚这2台计算机的设置有什么不同来解决它。需要特别注意的是,几个问题(here和here)似乎表明LC_MESSAGES
设置是需要更改的,除了两台机器都设置为en_GB.UTF-8
。 / p>
机器1:
show LC_MESSAGES;
lc_messages
-------------
en_GB.UTF-8
(1 row)
机器2:
show LC_MESSAGES;
lc_messages
-------------
en_GB.UTF-8
(1 行记录)
确定返回来自Postgres的语言消息时显然还有其他事情,但是我一直无法弄清楚是什么。
更新:尽管Lauenz Albe的答案解释了为何到目前为止我一直尝试失败的原因,但我仍然找不到任何有关如何设置PSQL语言或如何解决它的文档或建议。< / p>
答案 0 :(得分:1)
设置LANG
环境变量,示例性批处理文件:
@echo off
set PGDATABASE=my_database
set PGUSER=my_user
set PGPASSWORD=my_password
set LANG=C
psql -f %1
答案 1 :(得分:0)
lc_messages
确定来自服务器的消息的语言。
您看到的(1 行记录)
由psql
编写,并由psql
的语言环境决定。
要更改此设置,您必须更改Windows会话的语言环境。不知道该怎么做。