使用PostgreSQL的,当我连接到使用DB \c testdb
PostgreSQL数据库SQL提示里面.我成功连接到数据库但收到以下警告:
postgres-# \c testdb WARNING: Console code page (437) differs from Windows code page (1252) 8-bit characters might not work correctly. See psql reference page "Notes for Windows users" for details. You are now connected to database "testdb" as user "postgres". testdb-#
这个警告意味着什么?怎么解决?
为了使它更加明显,@ user3423801添加了该行的文件
cmd.exe /c chcp 1252
scripts
在您安装Postgre 的目录中.
例如,就我而言
C:\Program Files\PostgreSQL\9.3\scripts\runpsql.bat
CMD.exe的默认代码页与postgres的默认代码页不同...要使用注册表更改CMD.exe,请尝试以下操作:
开始->运行-> regedit
转到[HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Command Processor]
添加名为“ Autorun”的新字符串值,其值为“ chcp 1252”
然后重新打开CMD.exe
从psql文档:
psql构建为"控制台应用程序".由于Windows控制台窗口使用的编码与系统的其他部分不同,因此在psql中使用8位字符时必须特别小心.如果psql检测到有问题的控制台代码页,它将在启动时发出警告.
要更改控制台代码页,需要做两件事:通过输入cmd.exe/c chcp 1252来设置代码页.(1252是适用于德语的代码页;将其替换为您的值.)如果您使用的是Cygwin ,您可以将此命令放在/ etc/profile中.
因此,要删除该警告,您需要chcp 1252
在输入之前执行psql
.使用chcp
不带参数可以获得当前的代码页.