首页 文章

SSIS:Unicode数据是列的奇数字节大小应该是偶数字节大小

提问于
浏览
1

我正在运行一个SSIS包,将数据从一个SQL服务器提取到其他SQL Server . 源表和目标表具有相同的架构 . 其中一列是nvarchar(max)数据类型 . 当我试图插入数据时 - 它给了我nvarchar(max)类型列的跟随错误 -

错误:SSIS错误代码DTS_E_OLEDBERROR . 发生OLE DB错误 . 错误代码:0x80004005 . OLE DB记录可用 . 来源:“Microsoft SQL Server Native Client 11.0”Hresult:0x80004005描述:“第13列的Unicode数据是奇数字节大小 . 应该是偶数字节大小 . ” .

有人可以帮我解决这个问题吗?

2 回答

  • 0

    NVarchar存储16位= 2字节字符 .

    NVarchar列的大小以字节为单位指定 .

    因此,如果您需要在NVarchar列中存储13个字符数据,则需要将其大小设置为26 .

    这允许您存储来自世界各地的公共角色 .

  • 0

    尝试使用以下表达式添加派生列,并将其映射到目标列

    (DT_WSTR,4000)[column name]
    

    否则,请查看以下文章,其中包含有用信息:

相关问题