首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostgreSQL:使用psql命令行实用程序时Windows上的编码问题

PostgreSQL:使用psql命令行实用程序时Windows上的编码问题
EN

Stack Overflow用户
提问于 2014-01-06 15:07:47
回答 3查看 48.9K关注 0票数 27

我在Windows2008Windows上的一个集中监控系统中工作,我已经安装了一个R2 9.3来从命令行使用psql

当我试图访问一些远程Postgres (在我的主要情况下是8.4 )时,编码出现了一个错误:

命令:

代码语言:javascript
复制
psql.exe -h 192.168.114.12 -p 5432 -d db_seros_transaccion -U postgres -f script.sql

错误:

代码语言:javascript
复制
psql: FATAL:  la conversión entre WIN1252 y LATIN1 no está soportada

我试着增加这个句子

代码语言:javascript
复制
SET client_encoding = 'UTF8';

在我的脚本中,问题仍然存在(以及其他编码,如LATIN1和WIN1252)。

在googling之后,我发现一些人会更新服务器中的一些行来建立连接,这对我来说是个问题。

有人能帮助我在没有更新的情况下使用psql建立连接吗?有可能吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-01-09 14:32:38

非常感谢克雷格林格,工作,终于成功了!你现在是我的新偶像了!

这些步骤是:

  1. 打开cmd
  2. SET PGCLIENTENCODING=utf-8
  3. chcp 65001
  4. psql -h your.ip.addr.ess -U postgres
票数 88
EN

Stack Overflow用户

发布于 2022-04-21 03:01:12

Windows 10 / Windows server 2016或更高版本:

  • 开放Windows Control Panel
  • 选择Region (and Language)
  • 单击Change system locale
  • Beta: Use Unicode UTF-8 for worldwide language support
  • 单击OK

代码语言:javascript
复制
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"ACP"="65001"
"OEMCP"="65001"
"MACCP"="65001"

PowerShell控制台和CMD将正确显示西里尔字母。

票数 1
EN

Stack Overflow用户

发布于 2022-08-01 07:32:57

作为一个选项,尝试在psql中输入以下命令:

代码语言:javascript
复制
postgres=# \! chcp 65001

65001等于UTF-8

1251 = WIN 1251

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20952893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档