【发布时间】:2017-01-31 08:56:40
【问题描述】:
我有一个简单的 DTSX,它接收一些数据,并将其写入 SQL 服务器数据库,在此 DTSX 执行中,它会在某些字段上引发一些错误:
[OLE DB Destination [29]] Error: Column "mobile" cannot convert between unicode and non-unicode string data types.
但正如您从 OLEDB DESTINATION COLUMNS MMAPING 中看到的那样,这不是真的……怎么会?
【问题讨论】:
-
首先,你的数据模型是怎么说的?是 varchar 还是 nvarchar 类型的移动设备?此外,您是否曾在某一点或另一点更改过 OLE DB 源?如果您创建包含一种类型(varchar 或 nvarchar)的源,然后在查询或高级设置中对其进行修改以改用另一种类型,则 SSIS 会表现得很糟糕。所以基本上 - 如果数据模型是正确的 - 最好的方法是删除 OLE DB 源,然后使用正确的类型重新创建它。
标签: unicode ssis oledb dataflowtask