日期:2014-05-16  浏览次数:20607 次

ssis 导入csv 文件报错
导入。csv 文件时,目标源为OLE DB 导入的表各个字段均为nvarchar类型,数据流选择的page code 为UTF-8   报错:无法再unicode 和 non-unicode  之间转换????
------解决方案--------------------
1.修改表字段类型为nvarchar。
         2.导入一个临时表,再insert*** into *** select ***。
         3.直接通过应用程序读入记录集,然后再一条一条insert into ……。

或者:

1 变更DB对应Fields,的varchar为nvarchar, 
2 使用Data Conversion工具转换type为string[DT_STR], 
3 注意目的地mapping对应的来源数据为转换后的field(一般名 copy of fieldname) 

主要还是把表的类型改为nvarchar
------解决方案--------------------
这个估计是csv中的编码格式的问题。
------解决方案--------------------
别人这样没问题的哦http://blog.csdn.net/xushichang/article/details/6626214
------解决方案--------------------
追加一个数据转换 (组件,拖进来)

将字段转成Unicode文字列DT_WSTR.。

试试看。




------解决方案--------------------
首先你要知道csv里面的类型是 nvarchar 
对应ssis里面是 Unicode字符串[DT_WSTR]


所以拖个数据类型转换就可以了,将数据库的字段类型转换为 [DT_WSTR]