我正在开始将系统从MS SQL Server转换为Postgres。我转换了表结构,并使用“bcp”从SQL Server中获取数据。
ERROR: invalid byte sequence for encoding "UTF8": 0x80
HINT: This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".
CONTEXT: COPY cm_outgoing, line 200: "200 c:\temp\200.xml 2009-10-10 01:50:44.000 1900-01-01 00:00:00.000"
我已经使用“sed”来删除文件中的NUL(0x00)条目,我在我试图导入的文件中找不到0x80的任何实例。
有什么想法?有更简单的方法吗?
答案 0 :(得分:2)
看起来麻烦在Windows路径中。我不确定我们是如何达到0x80的,但加倍反斜杠有效。
答案 1 :(得分:0)
您的数据真的是UTF8吗?您是否尝试过将postgresql客户端中的client_encoding设置为Latin1?
set client_encoding = 'latin1';
--do your COPY here