我正在使用SSIS导入CSV . 该软件包已经工作了几年,现在可以将10K行导入SQL Server表 . 源文件的提供程序已切换到Unicode 65001系统 . 我没有把这转换成我的SQL Server 2008数据库可以使用的东西 . 我尝试过的事情包括:添加转换步骤转换为[DT_STR] 1252 ANSI,将数据库中的所有列从VARCHAR更改为NVARCHAR,创建NVARCHAR的全新表,复制平面文件并更改行结尾,将文件传输到舞台表 . 在所有情况下,我得到相同的错误“无法在65001和1252之间转换 . 我已经从Oracle数据库做了类似的事情并且转换步骤已经有效 . 注意,文件中没有unicode字符,它是由Oracle系统生成的 .
1 回答
我在这里找到了我的解决方案:http://slavasql.blogspot.com/2015/08/ssis-conversion-from-unicode-to-non.html
基本上,您添加了一个可视化基本脚本组件,将Unicode列设置为1252的新输出列 . 就是这样 .