SSIS错误“ UTF8”在编码“ WIN1252”中没有等效项

时间:2018-11-14 06:30:51

标签: sql postgresql utf-8 ssis

我正在使用SSIS包从Postgres数据库中提取数据,但是出现以下错误之一。

  

编码为“ UTF8”的字节序列为0xef 0xbf 0xbd的字符没有   在编码“ WIN1252

我不知道如何解决。我将sql表中的所有列都设置为NVARCHAR(MAX),但仍然没有用。请提供解决方案。

1 个答案:

答案 0 :(得分:1)

完整的Unicode字符集(以UTF8编码)包含数万个不同的字符。 WIN1252包含256。您的数据包含WIN1252中无法表示的字符。

您要么需要导出为更有用的字符编码,要么从源数据库中删除“笨拙”字符,或者使用SSIS本身进行一些(有损的)翻译(我相信您想搜索“字符映射翻译” )。

我首先建议尽管花费一个小时左右的时间来研究Unicode主题,但它是utf编码及其与ISO和WIN字符集的关系。这样,您将了解要选择以上哪个。