我已经安装PostgreSQL,想build立一个新的数据库,一切都很好,直到我试图使用欧元符号。 然后我知道,我得到的这个警告是有原因的。
我在启动我的psql shell的警告是:
WARNING: Console code page (850) differs from Windows code page (1252) 8-bit characters might not work correctly. See psql reference page "Notes for Windows users" for details.
所以我打算按照我的说法(来自PostgreSQL Documentation 9.2 – psql ):
psql构build为“控制台应用程序”。 由于Windows控制台窗口使用与系统其余部分不同的编码,因此在psql中使用8位字符时必须格外小心。 如果psql检测到有问题的控制台代码页,它会在启动时警告你。 要更改控制台代码页,有两件事是必要的:
当我键入cmd.exe / c chcp 1252命令时,出现语法错误。 所以psql,不能识别这个命令。 出于绝望,我试图在cmd.exe本身做一些事情,也不pipe用。
我在Windows 7 – 64Bit工作。
什么是数据库字符集? 如果是UTF-8,那么在运行之前,psql中只要告诉控制台使用UTF-8编码: cmd.exe /c chcp 65001
我在Windows 10中遇到了同样的问题。
在psql中输入! CHCP
它显示了我的设置为850.我通过执行以下操作更改为1252。
! dir在C:\ Program Files \ PostgreSQL \ 9.6 \ scripts中显示一个文件runpsql.bat
在退出psql之后,我在管理员模式下运行Notebook并在REM运行psql语句之上添加了命令chcp 1252
现在运行没有警告