2012-04-06 79 views
0

我在具有字符é的postgres中插入数据时遇到问题。 通过PGADMIN插入此字符时,它将字符解析为ETX,而pgsql shell将其解析为^ C。当我把查询与字符的文件,并通过在PSQL SHEL的文件时,它给我一个错误:错误:在pgadmin中插入用于编码“UTF8”的无效字节序列

错误:无效字节序列编码“UTF8”:为0x82

我的Postgres 9.0 Db的编码设置到UTF-8。

请让我知道如何处理这些类型的角色。

谢谢, Rohit。 PS:我不确定这个角色是否可以在这里看到。它是在 ASCII为代表的框画人物 - 192和 UTF-8 - U + 2514


+1

0x82表示您的客户端(pgadmin)使用代码页437,850或858.某处应指定此编码。 Postgres被设置为utf8(这很好),但是在客户端和后端之间的某个地方应该转换你的0x82(这是utf8中的一个无效字节)。 – wildplasser 2012-04-06 08:55:13

回答

0

简单的解决办法是找出编码你的客户什么是使用SET client_encoding

例如,这可能会解决你的问题:

SET client_encoding = 'WIN1252'; 

如果您使用的是Windows与pgAdmin的中,Windows 1252的客户端编码将是问题的最可能的原因。

相关问题